Remove Finished Queries from Grill Server memory 

Pull request which cleans up Finished query from Server memory and serves further requests from DB.

Major Changes in Patch:

* Introduced HSQL, dbutils &  dbpool dependencies for database related operations in grill server.
* Changed delay queue logic now to fire delay based on the size of the queue instead of time spent in the queue.
* Added Jackson (de)serializer for (de)serialization of column definition of result set metadata.
* Changed ResultSetMetaData class from Anonymous type to Named type in the Hive Driver. 
This change is making both server persisted result and driver persisted result to have same instance as GrillPersistentResultSet. Can we change getHttpResultSet method to check if path is directory or file, before returning the http end point? And return as http end point only if the result path is file.