Fixes #90

Updates the reallocate IP logic to convert to the correct mapped address
format for comparisons sake, regardless of the incoming format. Also
updates numerous unit tests that weren't quite pedantic enough.
Fixes RM5834: Remove allowed_pairs
RM5849: Fix for upstream c736569c737e96a69b75a6bc8e43ca9d5db5b2a3
Fixes #92

Adds extensive retries in several places in the code to ensure that we
get back in line for new IPs. Additionally, some places weren't wrapped
as they should have been.
Merge pull request #93 from Cerberus98/retry_harder_merge

Fixes #92
Addresses adding fixed ips by way of Nova

After a recent patch to improve retry logic, the signature changed for
allocate_ip_address. Tests that inadvertently called allocate_ip_address
by way of testing update_port continued to work because
allocate_ip_address is stubbed, as it should be. However, a new test
introduced in this patch manually mocks the method, attempting to a list
in the signature for the method, which should catch many cases. The only
real solution is an integration test to vet the functionality.
Merge pull request #94 from Cerberus98/rm5615_merge

Addresses adding fixed ips by way of Nova
Fixes #95

Fixes #96

IP addresses are now always stored in v6 format. The original tests
supported the incorrect assumption that IPs were mapped as versioned, so
fixing this caused many of them to break. This patch thus also fixes all
the tests that failed to support v6 mapping.

Also sets used_by_tenant_id on IP addresses correctly after a migration
months ago changed tenant_id -> used_by_tenant_id. Apparently,
sqlalchemy ignores any unmapped attributes. Finally, adds a test so it
won't happen again.
Merge pull request #97 from Cerberus98/issue95

Fixes #95
Merge pull request #98 from asadoughi/rm5834

Fixes RM5834: Remove allowed_pairs
interns (sigh)

rm5850
Merge pull request #99 from rackerlabs/wat

interns....
Merge pull request #100 from asadoughi/rm5849

RM5849: Fix for upstream c736569c737e96a69b75a6bc8e43ca9d5db5b2a3
update travis CI build link in readme

previously it pointed to the most recent build.
this could mean any random branch pushed up failed
and is ambiguous. now it shoes that the master
branch is indeed passing.
Merge pull request #101 from rackerlabs/readme

update travis CI build link in readme
Fixes RM5888: adds vm_id NSX tag for create_port device_id
Merge pull request #104 from asadoughi/rm5888

Fixes RM5888: adds vm_id NSX tag for create_port device_id
Fixes #105

Adds checking for minimum subnets on v4 (/30) and v6(/64)