Sanitized use of MVCC keys throughout the storage layer

Also documented MVCC design decisions.
No, the second return value of DecodeBinary is the decoded key which with the 7-bit encoding will be smaller than len(key) - len(remaining).