Clean-up and fix HTTP Executor

1. Every Executor is now Disposable and owns one underlying AsyncHttpClient.
  Copying Executor just copies settings and AsyncHttpClient is created for every Executor (lazily).
2. Execute `providerConfig.setNettyTimer(timer)` to ensure every thread used by Netty is daemon,
  and fix JVM hang-up on exit. *This will fix the hang-up on exiting sbt console*.