Added metrics support (using Codahale metrics).

Added CodaHale Metrics support
Added PoolingDataSource connection wait time metric
Added PoolingDataSource in-use-connections histogram metric

Refactored the in-use-connections logic since previous code review, please check its logic out.
Basically it should tell how many connections are in use at any given time, for building an accurate histogram.
My current solution is based on subtracting: totalPoolSize - availablePoolSize.