wip - first draft

took a first cut at this tonight. I don't know when I'll come back to it, but if this line of inquiry is interesting, grab my branch and keep going. To get it working you'll need to get rabbitmq running locally, create a queue, and set the endironment vars in `/tests/fixtures/.env`. I used the rabbitmq_management plugin to help with that.

Anyhow, here's the general idea:

`setup.py install` will install a `shove` executable into your path. All configuration comes from the environment. It will try to connect to RabbitMQ, and in `while(True)` make a blocking read that waits for something and then grabs it. When an item is received it will execute the command as a subprocess using honcho, a python rewrite of foreman. The whole thing can be run by a process monitor (upstart, etc).

Blocking reads prevent concurrent pushes from fatally interacting. Running things directly from the queue might be a terrible idea, but its simpler to implement so I've started with it. Alternatively we could try using a Procfile to define possible commands with an alias ( `deploy: deploy_command.sh -p 000`) and push the aliases through the queue. We can leverage Honcho a little further to handle parsing the Procfile, etc. I've set the RabbitMQ read not to wait for an ack, since the command may fail and I don't want failing commands to retry 'processing' over and over. However, we could probably leverage the acknowledgement to output what's happening back to the Captain. Right now that's all going to std out and err. I should at least redirect it to a log file, instead.