implement MLDv1

This patch adds support for MLDv1 to Contiki 2.7. MLD is disabled by default, but can be enabled by defining `UIP_CONF_MLD` to a non-zero value. If enabled, a Contiki node will respond to MLD queries and multicast address events as required by RFC 2710, i.e.

* ff02::1 will never be reported
* other addresses will be reported within the time frame set by the querier
* new addresses will be reported a number of times (currently 3), and less often if another node reports the same address
* when addresses are deconfigured, MLDv1 done messages are sent

When this patch was first written, we decided that MLDv1 is more than sufficient for our needs, and probably for all Contiki nodes. MLDv2 was deemed to complex for too little benefit, so we went with MLDv1 instead since all MLD queriers must understand v1 messages anyway.

The patch is based on the `2.7` tag of Contiki, but I can attempt to adapt it to master if so required.