Update to new YCM.
Use the Unite vim plugin.
Add vim undo history.