DATACMNS-451 - Added custom CollectionFactory.

Added a Spring Data specific CollectionFactory that augments Spring's CollectionFactory with support for special collection types like EnumSet and EnumMap. For all other types we delegate to the wrapped class.
DATACMNS-453 - Fix NPE in isPageableRepository() for Repositories without a findAll() method.

Added additional null check to isPagingRepository() to handle repository definitions that do not have a findAll method.

Original pull request: #69.
DATACMNS-452 - Added some helper types to simplify the implementations in store modules.

Added AnnotatedTypeScanner to easily scan for annotated types within a set of base packages. Picks up interfaces by default which had to be customized when using ClassPathScanningCanidateComponentProvider.

Added DirectFieldAccessFallbackBeanWrapper that will use direct field access for beans in case no accessor method can be found. This allows to easily implement bean property values through accessors first but using the field directly if the accessors aren't available.

Introduced AnnotationDetectionMethodCallback to easily find methods equipped with a given annotation.
DATACMNS-456 - Introduced getAttribute(String) on RepositoryConfigurationSupport.

RepositoryConfigurationSupport now has a getAttribute(String) method to lookup String attributes on XML elements and annotations. The XML implementation converts the given attribute name in a lower-case, dashed representation for the lookup.

RepositoryConfigurationExtensionSupport now ha a generic postProcess(…) method to allow implementations that only need to work with String attributes unify their customizations into that single method.
DATACMNS-457 - MappingContext now provides information about managed types.

Added MappingContext.getManagedTypes() as well as ….hasPersistentEntity(Class) to access all types currently managed by the MappingContext and find out whether a type is managed by the context.
DATACMNS-458 - Added PersistentEntities value object.

Introduced simple value object to hide a set of MappingContexts and be able to access PersistentEntities from them.
DATACMNS-456 - Added unit test for attribute to XML attribute name conversion.
DATACMNS-437 - Add basic reusable geo structures.

Prepare issue branch.
DATACMNS-437 - Add basic reusable geo structures.

Moved and retro-fitted the basic geo structures from SD MongoDB into SD Commons. This will serve as the foundation for more reusable geo spatial functionality in other SD modules.
DATACMNS-437 - Add basic reusable geo structures.

Refactored and generalised basic geo structures from SD MongoDB.
Adjusted equals methods to support subtypes in other SD modules.
Added convenience ctor to Polygon.
Removed MongoDB specific tuple representation (asList()).
Removed Shape marker interface.
Revised geo structures. Renamed spanning points of Box to be first and second because some stores could have a different meaning of the spanning points.
Changed radius field of circle to be a Distance (value + metric).
Added additional mitigation constructor to Circle.