Vim: overhaul :VimRC and buffer cleanup commands

The `:VimRC` command now can take an optional '!' after the command,
which will cause it to open the vimrc files within tabs in the current
Vim session, rather than opening a new MacVim instance to edit the
files. Without the '!', it works as before, except that it now executes
the command silently (so the user won't see the `mvim...` command in
the status bar of the Vim instance in which the :VimRC command was run,
and won't be asked to press <enter> afterward.)

To support the new functionality, the :VimRC command maps to the
VimEditRC() function (instead of executing the shell command directly.)
The logic on opening a new instance vs. using the current instance, and
so on, is now contained in this function.

The buffer cleanup command, which deletes all buffers that currently
aren't loaded into any window, was previously called "Wipeout()" and
had the shortcut of <leader>w. It has now been renamed
"BufDeleteInvisible()" and has the shortcut <leader>db.

Additionally, that command has been rewritten from scratch to be more
robust. It now has a better method of identifying what buffers are open
in every window in Vim. It also has better logic in determining what
buffers to then close (it checks that the buffer is in the buffer
list). Finally, it now shows a message indicating which buffers it
deleted.

Finally, the commands to map the key shortcuts and new commands has
been moved to the top of the .vimrc.after section, with the functions
implementing the functionality being below. This allows us to quickly
see the mappings we have added all right in one place, without the
clutter of the Vim script code of the functions getting in the way.
Vim: change vimrc files to use tabs, re-wrap

No code changes should be present. I just switched the indents from
being two spaces, to being one tab. I then re-wrapped comment lines to
fit within the vimrc syntax maximum of 80 characters.
Vim: add modeline cmd updates existing modeline

The command to add a modeline to the current file (bound to <leader>ml)
will now search the file for an existing modeline. If one is found,
instead of adding another modeline, it will replace the existing
modeline with a new one (representing the current settings.)

If no existing modeline is found, one is added to the end of the file
as before. However, it will add a blank line between the last line of
the file and the modeline, if one wouldn't otherwise exist.

As a note, the existing modeline search regexes aren't quite as
sophisticated as Vim's native version, so it's possible that it may
generate false positives/negatives.