Convert config loading to TOML, refactor appropriately

This PR refactors SimplePush to use TOML config loading, changes the existing portions to a new Application based init system, and config loading for each section similar to heka's.

A variety of Go idiom portions were also cleaned up, the logger was factored into an extensible logger with a uniform interface.

Fixes Issue #35.

Awaiting r+ from @jrconlin, @rafrombrc.
The only time it should be fed is if it succeeds, but yes, in the incredibly horrible condition that the client is somehow connected twice at once to two different nodes, then it is possible that two goroutines will attempt to stick this in at once. I'm changing the test <- true to have a default to ensure it won't stick.