Consistent platforms: Adding register default factory to Extensible
Consistent platforms: cleaning up todos
Consistent platforms: Extracting NameElementSelector and added units tests