DATACMNS-332 - AbstractMappingContext now prefers most concrete property.

BasicPersistentEntity now only caches the most concrete property for a by-name lookup to mimic the behavior that was implemented in getPersistentProperty(String name). This is to prevent shadowed properties of superclasses leaking into the by-name lookups.

Improved AbstractPersistentProperty.toString() to rather render the concrete field it is backed by.
DATACMNS-332 - Cache AnnotationBasedPersistentProperty.isTransient().