Bash: add local npm bins to $PATH

This commit changes the way the $PATH variable is constructed in
~/.bash_profile.

It adds a check to see if npm is installed and, if so, adds a relative
path entry to $PATH for local npm modules' binaries. These are the
binaries from npm modules installed without using the '-g' (global)
flag, and exist in ./node_modules/.bin/ when present.

This commit also re-arranges and cleans up the commands used in
constructing the $PATH.
Bash: add a comment to ~/.shell_commands
Vim: automatically trim space from Bash files

This commit simply adds "sh" filetypes to the list of filetypes we
automatically run the "trim trailing whitespace" command when they're
saved.
Add `webcl-test` command to test WebCL programs

This command runs a simple HTTP server, serving the local directory,
then launches the WebKit WebCL application and navigates to the local
server.

It has a robust set of options and configurations, details of which can
be found by running `webcl-test --help` command.

This commit also adds '.webkitwebcl.conf' files to .gitignore (these
files are user/local webcl-test config files, and the user may
optionally save one per project, and are largely system-specific.)
Bash: improve `brew clean` command in brew-wrapper

Now the command uses `brew cleanup -s` instead of trashing Brew's cache
directory. It also accepts the `--force` options to add '--force' to
the arguments to `brew cleanup` (deleting any old keg-only formulas.)
Finally, it does an `brew unlinkapps` right before doing `brew linkapps
--local`.
Bash: tabs/spaces fix in brew-wrapper file
Bash: improve `repair-openwith` command

Now does not clear the 'system' domain (article from TUAW on how to fix
the duplicate Open With... entries doesn't use it, so we probably don't
need to,) and does a `killall Finder` when it's done (again, as
recommended on TUAW.)
webcl-test: default to re-launching WebKit

Previously, the '--dev' flag indicated that WebKit should be
re-launched when it exits, and to open the Web Inspector on WebKit
launch.

This commit inverts that behavior, so that, by default, WebKit is
re-launched and the inspector opened. The new '--once' flag is used to
turn off this behavior, and replicate the old default behavior.
webcl-test: display Notification Center messages

If the utility `terminal-notifier` is installed, webcl-test will
display a Mac OS X Notification Center notification every time it
re-launches WebKit, informing the user of the re-launch and how to stop
it. Clicking the message activates the Terminal.

Only one of these notifications exists in Notification Center at a time
(the old one is cleared when a new one is added,) and all notifications
are cleared when webcl-test exits.