Graylog2 Extended Format Decoder

A simple decoder for the Graylog2 Extended Format for logging based on some code I saw in a blog @trink had assisted with. This should work with the specification for GELF. The logical next step would be a Graylog Output for the server but it is sufficient for my uses to simply ingest GELF so it can be tossed at ES+Kibana.
Is there a reason a failed JSON decode shouldn't be treated as an error?