Extension which allows you to register class factories that will create new objects based on data from existing objects essentially mapping from one class hierarchy to a different class hierarchy.