Support different project types

When vim is first loaded I'm typically in the root directory of a
project, so we can modify vim's behaviour based on the presence or
absence of files in the cwd.