Current WAL format doesn't seem to be extendable without breaking
reverse compatibility.
This PR proposes to introduces a metadata section
for each action in the WAL to which optional fields can be added.
Adding new fields is trivial and doesn't have to break backwards
compatibility if these are not critical for correctness.
Metadata contains the minimum version of the reader allowed
to interpret it.
Removing fields is not supported.