Bytes

There's a lot of stuff going on in this PR, but the important change is `[]byte`-oriented decoding methods. (And, consequently, a dedicated `Unmarshal` method that is really, really fast - about 3x faster than the existing decode method.)

Also, only maps and arrays check for `nil` now; for the rest it's an unknown byte error.

The same improvements are carried over to the JSON translator.