dhcpv6: Make sure release message is sent

Register an empty Release callback so that the message will be sent.
session: Use service iterator instead of match/creation callbacks

When a new session is created we need to get the initial list
of services which match the session AllowedBearers criteria. As soon
the session is running add or removed services are tracked via the
notifier interface.

We concluded that exposing all the services is not really necessary
and therefore we are using currently two callbacks to get the initial
list. That exposes implementation details from session to service, that
is GSequence. We also need to expose the type 'struct service_entry'.

Instead doing so we are using an iterator and keep all the
implementation details in session.c.
session: Use GList instead of GSequence for service list

The hash table is now the owner of the service entry instead of
the service list.
service: Use GList instead of GSequence for service list

The hash table is now the owner of the service entry instead of the
service list.
TODO: Mark GSequence removal done
iptables-unit: Fix invalid memory access

We should not access lines after freeing it by calling g_strfreev().
inet: Add functions to setup fwmark to routing table
inet: Add function to setup default route to a routing table
inet: Add function to remove default route from a routing table

Factor out the common code into iproute_default_modify() as it
has been done for __connman_inet_add_fwmark_rule() and
__connman_inet_del_fwmark_rule().
netlink: Port ELL's version of netlink

It is time to have a common netlink code code for RTNL and also
for the upcoming NFACCT handling in the session core.

ELL provides a nice implementation for the netlink interface, so
let's port it over to use GLib and when ELL is ready to be used
we easily can start using it.
netlink-test: Add test program for netlink
nfacct: Add NFACCT

Add NFACCT low level function.
netlink-test: Add NFACCT low level test
nfacct: Add __connman_nfacct_flush()

Add helper function for flushing all nfacct rules.
nfacct: Add helper function for managing several rules
session: Store creation related data into a struct

During the creation period we need to keep track of data
which is only needed during this period. Let's rename user_config
to creation_data and store all the necessary data there. This includes
the session pointer so that we don't have to pass two void pointers
around in the callbacks which we will intrudoce soon.
session: Flush all NFACCT rules on bootup
session: Add NFACCT rules per session

There are a few reserved ids for the policy routing table (0, 253, 254
and 255). Let's start the marker with 256 to avoid conflicts.
session: Add policy routing table
session: Add global firewall rules

These rules are used for all sessions:

-t mangle -A INPUT -j CONNMARK --restore-mark
-t mangle -A POSTROUTING -j CONNMARK --save-mark