Perform a command over SSH on a range of servers

Perform in sequence and report back the results

TODO:

* Make it parallel
Proving that variables in goroutines don't share memory

Had a bug in a script where it *seemed* that the last goroutine squashed
all the values passed into a channel. This seems to prove that this
isn't the case, or at least wasn't because I was dealing with memory
references.
Perform commands in perform_ssh in parallel