[FLOC-1042] PostgreSQL Acceptance test

Fixes https://clusterhq.atlassian.net/browse/FLOC-1042

If this is suitable, I will add the new dependencies (currently just the latest https://pypi.python.org/pypi/psycopg2) to `setup.py`. Each dependency must also go in the internal documentation for packages used.

This uses `psycopg2` which requires, on OS X for example ``brew install postgresql``. Perhaps it would be better to use http://python.projects.pgfoundry.org, a pure Python implementation. If not, should this just document that you need to install PostgreSQL?.
I think you could just use `node_ips = get_nodes(self, num_nodes=2).result` and then delete `def deploy_postgres(node_ips):`, shift everything under it a tab to the left and remove `addCallback` and `return` lines.
But don't do that, it would only work because `get_nodes` is really a blocking function that returns a `succeed` and therefore has an immediately available result. Given that we've discussed that that behaviour is going to change, I'd probably say don't do this linearly. @itamarst might've meant a different approach, in which case I'll leave it to him to explain it.