Implement different types of keys.

like string, json, integer, bytes etc... implementing the `Keys` interface.
Another iteration on indexing apis.

This time there is an indexing server that implements `IndexManager` interface
and a rest client.

`IndexManager` interface was previously known as `Indexer`.
Contains HTTP REST definitions for indexing.
LLRB (Left Leaning red-black tree) in memory indexing.
HTTP REST server and HTTP REST client.