Go: Export the maximum supported protocol version
Go: Make Encoder use the most recent protocol version by default

It is strongly advised to use the latest protocol version outside of migration
periods.
Go: Add TODO on refining error messages
Go: Check if a requested protocol version is supported by encoder
Go: Write a v3-style document header

Encoders generating version 3 of the protocol or later must use the new header
"=\xF3rl", and encoders generating version 1 or 2 of the protocol must use the
old header "=srl".
Go: Pretend encoder supports v3

Switch defaultEncoder to the recent version 3; and claim the package supports it.

In fact zlib compression and a new CANONICAL_UNDEF tag are pending.
Go: Create an "umbrella" test_all make(1) target for convenience
Go: Allow to specify a protocol version for a test corpus

On command line you can pass to make(1) a Sereal procotol version to use for
generating a test corpus, for instance:

    $ make compat CORPUS_PROTO_VER=3

Default version remains 2, for the time being.

The change has one negative implication though: test_dir is re-generated every
time the compat tests are run. This is because my make-fu is weak and I want to
ensure test_dir always correspond to a version specified via CORPUS_PROTO_VER.