added the type extension feature and registry extension feature along with unit tests for the type registry class