compute split key for range splitting

Added a method to compute a split key based on the size. To do this, I had to look at raw keys from the engine and decide whether they are an MVCC metadata key or a timestamped value and if so, find the metadata key. To do all of this, I had to expose the methods mvcc{En,De}Code and was forced to do the binary decoding/encoding of keys manually, which leaks MVCC implementation details.
@jiangmingyang Can you suggest an interface to improve on this?
Now I've changed it anyways so it doesn't matter, but in the previous version I was unable to use mvcc.Scan unless I really used all the Encode/Decode stuff from mvcc, @jiangmingyang.
Much cleaner now I think and nothing is exposed any more.