ISPN-2281 Initial Embedded and Hot Rod compatibility

It contains:
- Add first version of embedded <-> hotrod compatibility with a type converter interface and and an interceptor that uses it
- Allow objects such as byte arrays to be used as both keys and values
- Add ability to pass in metadata when storing data into the cache, hence removing the need for a wrapper for Hot Rod values
- Convert Hot Rod to use byte array keys and values (reducing memory consumption)
- This involves creating equivalent concurrent and non-concurrent collections
- Update CHMv8 base class from where the equivalent version was created
- Try to use a make sure all keys and values, when logged, are logged via a util that checks if it's a byte array.

Please note that some Memcached tests are failing because I don't yet have a putIfAbsent method that takes a metadata object. I'll get that sorted tomorrow morning and add a commit to fix it.

In the mean time, please review this so that it can get into the next alpha :)