Add more opcodes so we can read Graphite's Carbon stream

This adds support for enough opcodes to unpickle a graphite rendering
message, described at
http://graphite.readthedocs.org/en/0.9.10/render_api.html#pickle.

I also made some internal changes to consistently report errors to the
main decoding loop and renamed 'append' to 'push' so as not to conflict
with Go's builtin append keyword.  The unit tests still pass, and there
are now two tests for sample graphite pickles too.
test: use reflect.DeepEqual() instead of custom implementation
Merge pull request #1 from dgryski/read-graphite-carbon

Add support for enough opcodes to read Graphite's Rendering stream