initial proxy P.O.C.
Add hashring as optional dependency
Update to use config library, make cacheSize a config option, and switch to using the health status
add logger. catch exception if no backends are available.

- added a logger like stats.js
- converted call to `util.log()` to use logger `l.log()` (would throw exception otherwise since util was not imported)
- if no backends are available, the app would exit with an error calling `split()` on undefined `statsd_host` returned from `ring.get()`. Instead, catch this and report an error in the logs, but do not exit.
Merge branch 'master' of https://github.com/etsy/statsd into cluster_proxy
Merge branch 'master' into cluster_proxy
remove unneeded util import
Merge branch 'cluster-proxy-fixes' into cluster_proxy
add additional logging

Add logging to notify when a backend node is brought into the ring. Also there is a slight change in logic here as previously `ring.add(node)` would be called on every healthcheck (every 1s). This was probably harmless since it appears to be idempotent but I don't believe it's necessary and would make the logging of node additions excessive.
Merge pull request #320 from joemiller/cluster_proxy

add additional logging
Merge pull request #284 from etsy/cluster_proxy

Merging in the Statsd Cluster Proxy