Implemented plugin.create_port: fixed_ip and mac_address

Implemented create_port with fixed_ip attribute
Implemented tests for create_port with fixed_ip attribute
Implemented create_port with mac_address attribute
Test fixes on allocate_mac_address ipam tests
Implemented tests for create_port with mac_address attribute
Implements a first cut of network strategies

Implements the basic network strategy driver. The aim of this patch is
to provide a conceptually similar implement of both provider networks
and melange default networks while adding additional flexibility. One of
the other aims of this patch is to attempt to coerce a truer version of
shared networks out of the quantum implementation as it exists today.

Still considered a work in progress.
Implements a hacky IP policy

This patch prevents .0, .1 and .255 from being assigned in a given
subnet. The patch should be reverted later once we have actual IP
address policies ala Melange.
Merge pull request #61 from asadoughi/create_port

Implemented plugin.create_port: fixed_ip and mac_address
Merge pull request #60 from Cerberus98/provider_nets_merge

Implements a first cut of network strategies
Merge pull request #64 from Cerberus98/hacked_ip_policies

Implements a hacky IP policy
Fixes port_create and ip policy bugs

The default net strategies introduced a logic error that forgot to allow
for checking of the existence of a tenant owned network. Additionally,
the IP policy check was failing to account for the v4 of v6-ishness of
the subnet in question.
Merge pull request #66 from Cerberus98/ip_defnet_fixes

Fixes port_create and ip policy bugs