Add an emacs_else_vim() function

This replaces the alias of 'e' to emacsclient with a function that
determines if an emacs server is running, and only connects to it if it
is. Otherwise, the vim editor is used.
Add a local/ directory for extra zsh files

This adds a local/ directory in which you can add external .zsh scripts
which will be automatically sourced at initialisation. This replaces the
need to maintain a full list of extra scripts to source, although it is
still possible to do so (for example, for files outside the zsh
directory).