* Properly reset reusable variables on the driver when remote functions are run locally on the driver.
* Cache functions to run on all workers that occur before ray.init is called.
* Revert "Make tests more informative (#372)"
This reverts commit fd353250c8.
* fix bugs, in particular deactivate worker service on driver and remove condition variables
* changes to minimize the changes in this PR
* switch from faulty mutex synchronization to using atomics
* Increase the default size of the message queues, to accommodate exporting large numbers of remote functions. This is a temporary fix, but not a long term solution.
* Reorganize the scheduler export code to queue up exports. This does not solve the underlying problem yet, but sets up a solution.
* Start a separate thread on driver to print error messages by constantly querying the scheduler. This is a temporary solution because the solution based on starting a worker service for the driver which the scheduler can push error messages to is buggy.
* Fix segfault in taskcapsule destructor.
* Move tests for catching errors into a separate test file.
* Revert "roll back grpc (#368)"
This reverts commit c01ef95d04.