Thanks for the quick response Andrei.
I will try to make an integration test for this as soon as possible (possibly next week).
Also, I was recently trying this out and I noticed that destroyCluster() doesn't actually remove the software. That's probably fine if you are running in a cloud VM that will go away when you don't need it anymore but if you are running this on localhost you would probably expect that the software will be uninstalled when you call destroyCluster(). A side effect of this is that if you are doing development on localhost and launch a Zookeeper node, then that will remain installed even after you are done. And because Zookeeper puts a start script in /etc/init.d you end up starting Zookeeper every time you restart your machine.
What are your thoughts on this?