Forward port PR #357.
Fix for #358.
Fix for #192.
- Return SPDY support to RUN status.
  + Still need to deal with connection pooling and SPDY connections.
- remove unintended changes.
- Fix test failure.
Provided ability to use JDK ProxySelector

Fixes #360.

* Adds a useProxySelector option that tells async-http-client to use the
  JDK default ProxySelector.
* Adds a ProxyServerSelector interface that AsyncHttpClientConfig and
  ProxyUtils now use.
Merge pull request #362 from typesafehub/proxy-selector

Added support for java.net.ProxySelector
- Updates for 2.3.6.
- Delay when we do the conversion of byte[]->String.  Offered a 6-7% speed increase.
- Refactor builder method names.
Defer creation of composite buffer until the body is needed.
- Add methods to ClientConfig to be able to determine if any {Request,Reponse}Filters have been registered.

 - Avoid unnecessary iterator creation.
- Rework previous fix.
- Switch from cached thread pool to fixed thread pool.
Fix typo.
Revert fixed thread pool change.  Netty provider tests fail with it in place.
Call getResponseBody0 before allocating the array.
Force encoding when using String.toLower/UpperCase, close #361
Do not create a thread pool in AsyncHttpClientConfig.
Developers may still specify a service that they may wish to share with the AHC instance.

By having this not be configured by default, it will allow providers to provide more optimized configurations out of the box.
tabs->spaces