Add functions +, -, and +=.  Preprompt changes including dirstack improvements and added hostname.

+ = pushd, - = popd, and += = pushd $OLDPWD (in case I typed cd when I
meant to type pd or +).

+, -, and += are functions using the function <name> form since
they're non-POSIX identifiers, and this is the only way I found that
works well in both zsh and bash.

dirstack is now printed with a + suffix, to match the +<n> aliases,
which allow bringing the <n>th dir to the top of the dirstack without
rotation, leaving the others in their original order.

First line of preprompt is now $USERNAME@$HOSTNAME.

Remove colors from git_branch and tilde_directory functions.  Coloring
is now all handled in dir_info.