eliminated ExecutionContext.Implicits.global.  changed BackToTheFuture and FrameworkIdUtil to use user-defined execution context by implicits.
java.util.concurrent.Future.get() doesn't guarantee to stop, possibly block forever.  Returned future itself can be timeout with Await.result().  However, this doesn't stop/interrupt get() thread. Consequently, this thread will probably leak.  Particularly, the future returned by org.apache.mesos.ZookeeperState blocks forever in get() method when Zookeeper dies.

To specify timeout amount, please inject implicit BackToTheFutureTimeout value or "import mesosphere.util.BackToTheFuture.Implicits._".
Merge pull request #5 from everpeace/refactor-back-to-the-future

Refactoring BackToTheFuture