copy constructors for value object hierarchies
generate seperate packages for services
refactoring for new service packages