Tests for cache listeners in compatibility mode

This pull request contains tests to several bugs/inconsistent things related to CacheEntryEvents in library mode and mainly in compatibility mode.

Fixes test for library mode listeners where methods remove() and get() (get() after eviction) fires different events that the test says (via comments).

Main part is directed to compatibility mode where it tests if correct events are fired, successfully propagated to embedded cache and contain correct readable data.
The assumption "which events should be fired" was made based on library mode, so it would be consistent. 
All remote caches (HotRot, Memcached, Rest) fire CacheEntryVisitedEvent on replace() which is inconsistent with library mode. Additionally, via Rest cache, it fires CacheEntryVisitedEvent when simply modifying entry via put() which is inconsistent even with other remote caches.

These tests are supposed to fail over these things.