support for new style repo node ...

- just need to be able to return the repository object for repo node
add some caching in TDAbstractProjectRegistrationDefinition

- isActive and isDirty are expensive operations. The objects in the
  list are rebuilt every time, so we can afford to cache.
- rediculous perfomance improvement ...