Adding one universal logger - everything goes through winston.

* Add a file transport
* Add a statsd transport
* Add a heka transport

All logging except for cef logging goes through these. statsd stats go through these.
Add a stats.setupMiddleware function to reduce duplicate code in each of the processes.
Move custom_logger into logging directory
Move cef_logger.js and metrics.js into lib/logging/
move lib/logging.js => lib/logging/logging.js
update the tests for the file change locations
Trying with metrics.
Make winston-metrics and winston-file work with each other. Remove winston-heka until we need it.
Update how statsd messages are done.

* Revert changes that removed statsd.increment and replaced it with a logging message.
* In statsd.js, trigger winston messages with the statsd. prefix.
* In winston-statsd, listen for statsd. messages, and do the right thing.
Remove the console.log messages from winston-metrics and winston-statsd
Try to get the host/port out of statsdConfig, not statsdOptions
fix the jshint error
Split off writing to cef (winston-cef) from the cef_logger interface
Add a heka winston transport
Use new style heka messages that use fields instead of requiring a decoder on the heka server.
Add heka to list of deps
hook up a rabbitmq winston transport.
Create a KPI transport that uses a TCP connection to shuttle metrics to the KPI store.
Move all the transports to the transports directory
Make sure the metrics logs are written in the same format as before.