DATAJPA-619 - JpaPersistentPropertyImpl now considers JPA access definition annotations.

JpaPersistentPropertyImpl now looks up both Spring Data and JPA access type definition annotations from both property and type level. Property-level definitions trump type-level ones, Spring Data ones trump JPA ones if defined on the same level.

In support of DATAREST-269 to be able to work around id access issues when working with proxies created by JPA providers.

Related ticket: DATAREST-269.
DATAJPA-620 - Avoid potential infinite loop in CrudMethodMetadataPostProcessor.

We now use a ConcurrentHashMap for the metadata cache. Previously we just used an plain HashMap in a potential concurrent read / write situation which could lead to an infinite loop on put.

Original pull request: #111.