Extract TyphoonDefinitionRegisterer from TyphoonComponentFactory.

Extracted register:(TyphoonDefinition *)def logic out into a method object.
rename