Add support for OpenStack floating IPs

This attempts to fix #637 and fix #791. However, this code currently
depends on libcloud 0.14.0-dev, which has not been released yet.  I have
updated the requirements for tox to handle the development release of
libcloud however I don't expect it to get merged.

So, for now, this is just a public patch for people to test out.  I'll
revist the commit message once the next release of libcloud is out.

Signed-off-by: Paul Belanger <paul.belanger@polybeacon.com>