Update part of buffer when possible.

Also fixed problem where we weren't printing stack traces to log when
not sending an error email.
In practice this updates usually only one line. Even with big files
iterating and comparing each line should not be noticeable.
Give up and stomp entire buffer on new line. Any change made to the vim
python buffer array will add to the undo history.

This also fixes a problem with sending patches for changes received from
workspace.