Annotation processing overhaul

This builds on the work @guidomedina submitted. 

All Riak annotations can now be applied to fields and methods (getter/setter pairs)
All types are checked during annotation scanning

Using the `JSONConverter`, adding the Jackson `@JsonProperty` to any field or getter will override the default behavior of the field being excluded from serialization.

Full test coverage provided for all the annotations and the JSONConverter.