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.
Hrm. `test` channel is created w/ length 1. We feed it here inside a for loop, multiple times unless there are errors. But we pull from it outside the for loop, just once, and then we exit. Unless I'm mistaken, the rest of the goroutines will block forever and never exit.