createID method
If id is not already assigned a new identifier,
then constructs one with _newId. Then advances
the new id set via advanceNextId.
Implementation
String createID(String id) {
if(_nextId.isEmpty) {
_nextId.add('a');
}
final newid = ids[id] = _nextId.join();
advanceNextId();
return newid;
}