Remaining steps for IPv6 support

Most of the work for IPv6 has already been done; this adds support for using ip6tables, makes sure ipv6 support is enabled on the docker0 bridge, and skips the first IP even on IPv6 so we don't have to use a sub-range.
I think you're right, on reflection.  It would have to be refactored anyway to return multiple IP addresses at the same time.  Your way is better.