Rework undo to take complete ownership of some operations

This makes editing the text-storage faster than going through the view
obviously.

Use this as a proof of concept to reimplement the bulk of xvim_shift
as -[XVimBuffer shiftLines:column:count:right:block:]

The performance that this code reaches now is bluffing compared to the
previous one. It's still not nearly as fast as vim, but it's decent.

Note that the cursor position handling code is still messy, which makes
the number of parameters to that selector properly disgusting, but we're
getting there.
Move xvim_incrementNumber to XVimBuffer, where it belongs
Disable GC on the XCode5 plugin
Remove useless __USE_DVTKIT__ dependency
Get rid of the lastVisual* properties on the XVim instance

Move them to a proper ivar of the XVimBuffer instead
This is the beginning of moving a lot of stuff there, so that we can
capture the buffer state on undo/redo properly.