Added support for udp protocol (dogstatsd)

Datadog agent can be run locally as a process which listens for udp traffic on port 8125. The format is defined here: http://docs.datadoghq.com/guides/dogstatsd/ under Datagram Format.
This pull request adds support for pushing metrics to a datadog agent using UDP protocol (local or remot):

- Offload of pushing metrics to remote datadog server to the locally running datadog agent
- Leverage the fault tolerance etc of the local datadog agent which has retry attempts, better logging etc.
- The local datadog agent can be setup with the right api keys/hostname/tags at system level. So the application need not be aware of the datadog api keys etc, which is required for http calls.

Note: I have kept Transport and HttpTransport at the same package as earlier for backward compatibility, though I would have liked them to be moved the transport package. Thoughts?

I have tested the udp transport and it seems to be working fine.