Fixes #27

Implements basic segmented networking by providing a new "segment_id"
column. This column is used for lookups when assigning IP addresses out
of "shared" networks. If one attempts to create a port on a shared
network without providing the segment_id, ambiguity exceptions are
raised. Additionally, extends subnets to allow a segment_id to be passed
when the subnet is created.
Merge pull request #28 from Cerberus98/per_cell_net_merge

Fixes #27
RM3889
- remove relationship between network and ip_policy
- add helper function to get offset,length from cidr
- add tests for conversion of cidr to offset, length
- validate that the policy cidr exists in the subnets

paired with cerberus98