Remove Heka client

* Check in the Heka log message schema.
* Add log message convenience functions from Heka.
* Add a `make gen` task for generating Protobuf and Cap'n Proto sources.
* `make build` now installs binaries for pinned dependencies.
* Replace `Heka{Emitter, Sender}` and test log emitters.

The dependencies have changed, so this will require a `make clean` before building locally. Closes #125.

@jrconlin, @bbangert r?
> One thing to remember, is that if you create something in a Go function, and it never escapes the scope of the function, it stays on the stack so its immediately collected when the function exits.

True—though we are using a `sync.Pool` to recycle messages, so I think the slice escapes onto the heap as part of the `Message` struct. I'll add a benchmark, and a test to verify that messages are recycled correctly. Reimplementing `GenerateBytes` in terms of `Append` is just a side effect, though; its primary use is for `Message.Identify`.