Additional Subnet Math

Added some advanced subnet functions to sub-divide subnets and whatnot.  I tried to come up with as many situations as possible, if anyone comes up with more functions I am happy to add them.  I didn't bump the gem version or anything, I can do that too.