Add support for indirect buffers

As it turns out, indirect-buffers in Emacs are a bit of a pain, and while the diff output is perfect thanks to the last patch, saving an indirect buffer doesn't cause a refresh of that indirect buffer (only the underlying buffer). Here is a patch that fixes it by scanning for indirect buffers (by filename) when a file is saved and refreshing all of them.

It feels a little bit like a hack and may have some performance implications (so you may not want to merge which is okay), but is the best fix I can think of for now, and passes all tests.