DATAREST-417 - Adapt to type reorganization in Spring Data Commons.
DATAREST-401 - Updated changelog.
DATAREST-160 - Added support for ETag/If-Match based on entity's version property.

Original pull request: #148.
DATAREST-160 - Polished support for ETag headers based on version properties.

Introduced a dedicated value object for ETags and moved the logic of ETagValidator into it. Switched from an annotation based injection model to a type based one.

The HTTP status code for a non-matching ETag is now 412 Precondition failed as the HTTP specification suggests.

Original pull request: #148.
DATAREST-418 - Updated changelog.
DATAREST-418 - Prepare 2.3.0.M1 (Fowler M1).
DATAREST-418 - Release version 2.3.0.M1.
DATAREST-418 - Prepare next development iteration.
DATAREST-418 - After release cleanups.
DATAREST-394, DATAREST-408 - Projections now consider collections and maps.

The ProjectingMethodInterceptor now inspects collections and maps to apply projections to collection elements and map values. Test cases inspired by a contribution of Saulo Medeiros de Araujo.

Related pull request: #152.
DATAREST-388 - Improved annotation based event handling.

The annotation based event handling now relies on the type of the first method argument to determine the domain type the handler is interested in. Improved method invocation to not unnecessarily wrap exceptions thrown from them. Changed the test cases to throw a dedicated runtime exception to implicitly test that the 

Renamed LinkSaveEvent to LinkedEntityEvent as it's not only used for save-events for entities. Make use of Methods' USER_METHOD filter. Moved the class into the util package. Removed the UUID converter as Spring's DefaultFormattingConversionService provides it out of the box.

Added missing license headers and JavaDoc. Deprecated Class<?> attributes on handling annotations.

Related pull request: #151.
DATAREST-414: Hacking on embedded Cassandra test
DATAREST-414: Restore alternate version number