Templates for transport stack, plus UDP code.

Add templates for transport code (sending and receiving SIP).
Add UDP transport manager implementation, for sending and receiving
using UDP as the transport.
Add connection table to transport.go.

Track open sockets, associate addresses with sockets, and expire sockets
that have been idle for too long.
Write a TCP transport implementation

Split away a 'transport' interface from the TransportManager to
allow specific transport code without having to reuse parser-management
code in each implementation.