[WIP] Phase 1 of multiple provider connection feature

Still to do:

1. spec tests
2. rubocop check
3. test with Openstack events, RHEV and Amazon to make sure they are all still working.
4. there is something not quite right with one of the rollback migrations.

note i needed a postgresSQL statement in one of the migrations. This is because setting the port, hostname and ipaddress would call the ext_management_system accessor methods which would in turn set these properties on the provider_connections records which were rolled back.