Refactor pipeline

* The old pipeline implementation is not calling driver.
* Pipeline represents communication protocol between executor and driver.
* Executor is running as a thread.