Support state in the miner server and notify the shared state of updates
Rename the ambigious 'shared' to a generic 'status' dict
I was wrong. 'shared' is a more appropriate name because it's not bound to a specific object, but allows injection of a shared dictionary
Finish the new updates tests
Finalize and test the distributed miner