removed the interface PrimitiveObject, since it isn't needed anymore, and just creates confusion, most of the methods are still in the respective subclasses, maybe they will be needed sometime...