Simplified actor system by removing 'Dispatcher', and .dispatch and .remote Op methods.

These methods have been replaced by .distribute, which distributes the opeartion it is run on. The .dispatch operation was created so that all children operations of an operation would be run on the cluster router, because it used to be the case that the tile operations were wrapped in another operation (that would then have .dispatch called on it). This level of complexity isn't needed anymore with RasterSource and .distribute, so was removed.
Implemented filter on Operation
Addressed TODOs. Some are left pending other issues.
Merge remote-tracking branch 'upstream/master' into refactor-todos
Merge pull request #659 from lossyrob/refactor-todos

Simplify actor system by removing Dispatcher and .dispatch, .remote