Add tests for Collection::keys and Collection::values properties
Add Trait docblock for PropertyMapperTrait
Remove unused functionality from PropertyMapperTrait
Force PropertyMapperTrait to be more strict with method calls
Do not declare Collection::serialize() and Collection::unserialize() as final
PropertyMapperTrait - update notice description - the error should not suggest a library-specific usage
PropertyMapperTrait - Allow event buble-up if the parent class also uses this trait
Implement Object::parent to get the name of parent class ( if any )
Update description for test: "Collection must implement SeekableIterator interface"
Only check if class uses a trait if we have $parent var defined
Total remake of how method-to-function mapping works

This version allows easy extensibility for subclasses and in general
feels better in my opinion...