DATACMNS-293 - Basic infrastructure for query augmentation.

Added SPI to support generic query augmentation. Implementors implement a QueryAugmentor that can opt into augmentation and will get called for query executions and updates to potentially massage the query to be executed, manipulate or even replace the execution of updates.

We expose a QueryAugmentationEngineAware injection interface for repository base class implementations to expose they want to take part in the query augmentation.

TODO:
- Add BeanPostProcessor to inject QueryAugmentationEngines into QueryAugmentationEngineAware classes
- Automatically pick up QueryAugmentor instances from the application context
- Ordering of QueryAugmentors
- More tests
DATACMNS-293 - Further refinements in soft delete support.

Improved the template methods in AbstractSoftDeleteQueryAugmentor to accommodate more complex scenarios (see DATAJPA-307). Added DirectFieldAccessFallbackBeanWrapper from SD JPA to use it for looking up property values.