add a packet queue for coalescion.

This adds a packet queue to the UDP socket. This means
    we group packets together.

The defaults are flushing every second and flushing
    when we reach 1440 bytes of data.

cc @mranney @sh1mmer @kriskowal @Matt-Esch