Merge pull request #40 from zarfide/master

- Adding client auth required to default config
- ssl related updates for client auth and keystore introspection
[Gradle Release Plugin] - pre tag commit:  '0.2.3'.
[Gradle Release Plugin] - new version commit:  '0.2.4-SNAPSHOT'.
Add statics (counters) to measure the efficiency of the default connection pool manager used in Ribbon's httpclient. Upgrade httpclient version t0 4.2.1.
Added more counters and a timer to trace the time to get the connection from pool.
Merge pull request #47 from allenxwang/cp

Add statics (Servo counters) to measure the efficiency of the default connection pool manager.
[Gradle Release Plugin] - pre tag commit:  '0.2.4'.
[Gradle Release Plugin] - new version commit:  '0.2.5-SNAPSHOT'.
Support for async communication using Apache's HttpAsyncClient. Added streaming interface. Added support for Observable.
added stream test.
Changed method signature of callback interface. Make sure Future returned from async call work.
Code refactoring to simplify the async and callback interfaces. Implemented returning future from load balancing async client.
Added streaming support for Observable.
Added support for parallel execution and canceling future.
Refactor and consolidation. Use HttpReuqest and HttpResponse for RestClient. Fix PMD, find bugs.
Added API and test to create load balancing async client with HttpAsyncClient.
Added examples sub project. Changed the serializer interface to use OutputStream. Make Response and AsyncClient extends from Closeable.
Added LoadBalancerErrorHandler and provided default implementation and one for httpasyncclient. Move HttpResponse class to desired package.
Rename FullResponseCallback to BufferedResponseCallback
Added more API to query executeWithBackupRequests() results. Make sure cancel works correctly. Close the consumer as part of response.close().