Improve ipcluster management

Refactor `distarray/tests/ipcluster.py` to take `start` and `stop` commands and change the  `setup_cluster` and `teardown_cluster` Makefile targets to use them.  Also, `start` now waits for the cluster to print out a "success" message to STDERR before exiting, so the unreliable `sleep` can be removed from the Makefile.

`ipcluster stop` seems to be broken under Python 3, fix here:
https://github.com/ipython/ipython/commit/cb9fb2d98390465958418dd8c6540e9156f689db

But with that fix applied, this works.  Without that fix, `teardown_cluster` is still broken under Python 3.

Tries to address #76.