Reducing creational prototype using aggregration instead of reimplementing getname/setname