Start of refactoring to split ObjectAccess into read/write.
This is to allow support for field-based writing alongside getter-based reading for an arbitrary object property.
Renaming methods and interfaces.
Adding object readers to default access strategy.