Factor shared IPv4Subnet/IPv6Subnet code out into IPSubnet

Also add version-agnostic IPSubnet.fromString()

Change-Id: Id4f90e2d4fa8ae9f8c16762df20c8e1c1c8dca96
Signed-off-by: Brandon Berg <bberg@midonet.com>
Merge "Factor shared IPv4Subnet/IPv6Subnet code out into IPSubnet"