Vim: fix format options in git commit msgs

Our normal formatoptions were getting overridden by the git language's
gitcommit filetype handler. This was causing weird behavior, like the
first line being concatenated with the first line of the git changes
comment block as soon as you started typing; and difficulty inserting
newlines between some characters.

This fix re-sets the formatoptions to our preferred ones in our user
gitcommit file handler in ~/.vimrc.after.

We also change the color column in gitcommit messages to match the
textwidth. This will allow us to see, visually, where our text will be
wrapped.
Git: make path to ~/.gitsupport relative

Before, we hard-coded the full path to our User directory. This commit
changes it to use "~/" instead, which should allow it to be used on
a wider range of machines.
Vim: Add 'w' to format options

'w' causes Vim to assume lines with whitespace at the end continue a
paragraph. While we normally don't want whitespace at the end of lines,
maybe this will help with the "can't insert a newline into the middle
of a comment" bug (where, with 'a' in the formatoptions, Vim assumes
the two new lines are part of the same paragraph and immediately
autoformats them back into a single word-wrapped paragraph.)

Just to test it out. May revert later.
Vim: add command to toggle 'a' in formatoptions

`\a` is the keyboard shortcut in normal mode. On Vim startup, 'a' will
be in the formatoptions. Pressing \a will remove it; pressing \a again
will add it back again.

This is a bandaid fix for the problem of not being able to insert a
newline in the middle of a comment or other wrapped text. This is
because Vim tries to immediately autoformat the text, and (since there
isn't a blank line between the two lines, and Vim therefore thinks the
two lines are part of the some paragraph,) joins the two lines back
together, negating the newline we just entered.

With this change, we can toggle 'a' off, insert a newline and reformat
the text manually, then reenable 'a'.

Read the TODO in the comments for more of my thoughts on this.
Bash: only add /usr/local/bin to PATH if it exists

This should allow this .bash_profile to work on machines without
homebrew (first steps toward a unified set of dotfiles between Mac and
Linux.)
Bash: set $OS based on current system

The first thing ~/.bash_profile will now do is detect the operating
system of the system it's running on, and set the globally exported
variable $OS to either "Mac" or "Linux".

This is part of our (still early) work to use the same dotfile branch
on both Mac and Linux. OS-specific configuration can now be guarded by
a `if [[ $OS == Mac ]]; then` (or 'Linux'), allowing for the same file
to be used on both systems without errors.