Remove ExecutorScheduler - New ComputationScheduler

Removing `ExecutorScheduler` as it does not comply with the contract of sequential execution. A Scheduler needs to guarantee sequential execution, but putting work on a multi-threaded thread pool allows concurrent execution. 

See https://github.com/Netflix/RxJava/issues/711 and https://github.com/Netflix/RxJava/issues/713