Proposed change to the class hierarchy of openmrs objects

dear @wyclif, @dkayiwa and others should we discuss this at the design forum?

I originally wanted to discuss https://issues.openmrs.org/browse/TRUNK-4903 but since this depends on this issue might be better to talk about this first.