Start working on a Record class which replaces QueryResult. #6

Stub out some logic using GSON which will accept some JSON data as input to
prevent the user from having to write the code themselves. Make the Record class
less firmly tied to having ColumnVisibilitys as well in an attempt to make the
simple case easier.
Rename some more of the classes from the QueryResult->Record change. Reorganize
the package layout too to give some better organization. #6
MapRecord had an incorrect equals(Object) method. Added a toString() for good
measure as well.
Forgot to make the methods static in JsonRecords. Added some new methods to
allow users to provide a String of JSON (not just point to a file). #6
A start to some tests for making Records from JSON #6
Return an empty list when an empty JSON string is provided #6

GSON will return null when an empty JSON string is provided. I don't like this,
so I'm switching it over to just return an empty list as this is much easier for
work with.
Take the plunge and add in typed RecordValues #6

Something that has been a long time coming. We have the ability to store
various types leveraged by the Lexicoder stuff in Accumulo to make our
lexicographically sortable variants for us so that things like groupBy actually
work.
Move the RecordValues into their own package #6
Defer to the concrete RecordValue types to provide proper forward and reverse
sorting #6

Now that there are real types for the RecordValues, we can tie the RecordValue
to the Lexicoder to make sure we have proper sorting keys.
Oof -- Finish up typed RecordValues and make the JSON parsing use them #6

Had to scrap the initial intent of using GSON's auto-magic ability to recreate
instances of a Class automatically from JSON because it was breaking the
RecordValue model I was moving towards. I could still use their JsonParser to
manually parse the JSON in the manner which I expected to receive it, which was
nicer than doing it completely by hand.
Clean up the json test and add a convenience method on MapRecord to get the underlying Map #6
Add convenience methods to MapRecord to make it more in line with MultimapRecord #6
Dead code #6
Some more unit tests to show the difference in the json methods #6
Remove some redundancy in the method names of JsonRecords #6