add InternalSplit command & tests

* added a method CopyInto to the response cache, req'd for initializing a new range during a split.
* added an InternalSplit command. Making the split happen without a transitory period in which things can go wrong is subtle so this needs a good review and likely some changes.
* added some basic tests, but the transition should be bulletproofed using more tests eventually.
Be a little more explicit here, saying the original range is truncated to have StartKey=desc.StartKey and EndKey=args.SplitKey, and the newly created range has StartKey=args.SplitKey and EndKey=desc.EndKey.