GEOMESA-234 using lexicoders for secondary index values

* Using mango lexicoders for primitive types
* Moving some encoding/decoding logic into more consistent locations
* Updating attribute strategies for querying with lexicoders
It's still used. Null attributes get written as "<null>" in the index, although I'm not sure why. Can you query in CQL something like 'id = null' ? If not, we could remove it and not write null entries at all.