Implement clustering, loop over machines until one works

Hi,

This is a first attempt at implementing some form of cluster support.
It's very naive at this point but I wanted to get this out there so we could collaborate on a better approach.