Further template metaprogramming updates to ComponentType with tests
Removed TMP from Family, unified API