Add an IPAllocator type

Part of ip-per-service
gofmt has an opinion on this, and AFAIK we take gofmt as gospel