* add checkpoint test to verify it reloads from disk
* change print z.glom to assert
* change log to Marking worker * as failed
Merge pull request #22 from MaggieQi/master

* add checkpoint test to verify it reloads from disk
Add write expression.
  - Now we can do array[sslices] = data[dslices]. array and data
    can have different shapes but array[sslices] and data[dsslices]
    must have the same shape.
  - make_from_numpy now uses write expression.
Clearer naming and information.
Merge pull request #25 from fegin/master

Add write expression.
Merge pull request #24 from EasonLiao/master

fix rpc server._handler = None error by using Conditional variable
Merge pull request #28 from EasonLiao/master

worker exits after heartbeat message timeout.
Have watchdog listen on stdin for messages.

Stdout appears to always work.
Merge pull request #29 from spartan-array/fix-watchdog

Have watchdog listen on stdin for messages.
Make sure to shutdown cluster when controller goes away.
Merge pull request #30 from EasonLiao/shutdown-on-master-del

Make sure to shutdown cluster when controller goes away.