ObjectProperty Hydrator should only hydrate public properties (fix + new test)

According to the docs, the Zend\Stdlib\Hydrator\ObjectProperty hydrator hydrates "Any data key matching a publicly accessible property will be hydrated; any public properties will be used for extraction."

No Test was found directly for this Hydrator and the Hydrator itself would attempt to set private or protected properties resulting in a fatal error. 
To this end, I have:
1. submitted the fix to only hydrate public properties
2. have created a test for the hydrator

I hope that this meets guidelines for this.
it's an `o(1)` overhead (once per object type).