Implement api/aggregators endpoint
Implement api/version endpoint
Implement api/dropcaches endpoint
Fix comments in HttpSerializer format methods
Fix error handlers in HttpSerializer where, if the user does not supply a jsonp
callback function, it was still wrapping the response in parentheses

Signed-off-by: Chris Larsen <clarsen@euphoriaaudio.com>
Add configurable support for chunked HTTP requests via the
 tsd.http.request.enable_chunked config parameter
Add tsd.http.request.max_chunk to allow changing the max chunk size
Implement /api/put to store datapoints over HTTP
Add TestPutRpc that unit tests many possible HTTP inputs
Add parsePutV1() to serializer
Add formatPutV1() to serializer
Add NettyMocks.postQuery() overload for providing a common Content-Type

Signed-off-by: Chris Larsen <clarsen@euphoriaaudio.com>
Add JSONException.java class to wrap the different Jackson exceptions as per
Tsuna's request
Refactor the TestJSON unit tests for cleaner code and handle the new exception
class
Add constructors to BadRequestException.java to wrap source exceptions

Signed-off-by: Chris Larsen <clarsen@euphoriaaudio.com>
Merge remote branch 'remotes/official/next' into next
Add methods to UniqueId.java for converting UID byte arrays to hex strings and
vice-versa
Add unit tests for new hex to byte methods
Add HttpQuery.explodeAPIPath() to help API calls strip the /api/v# portion
Add unit tests for HttpQuery.explodeAPIPath()
Add TSDB.assignUid() to assign UIDs to metric, tagks and tagvs using the caches.
It's also slightly different than UniqueId.getOrCreateId() in that we want to
throw an exception if the UID is already assigned.
Add unit test file for the TSDB class with tests for assignUID(), need more
Set Tags.validateString() public as we'll need it elsewhere