Support for IPv6-based extensions

Since the last official version of this library was worked on, a lot of the iptables extensions have moved to use the extension system that supports IPv6 and dropped support for the original 'extra_opts' method.  This pull request adds support for setting extensions in the new system so that features like MARK and udp port selection work again.