Ignore projects/*/build
Merge the various interface classes into BaseFile.

Having separate classes for each set of capabilities proved to be more confusing than useful, so I'm doing away with it. I've also scrapped having the interfaces be ABCs; they'll instead simply raise NotImplementedError, so subclasses can implement what they want and no more.

Also fix setup.py to notice that we're a package now instead of a module. I'll be uploading a new version of fileutils soon.
Add a skeleton fileutils.zip module, a module that will shortly provide a fileutils wrapper around zip files
Documentation changes, allow sftp:// as an alias for ssh:// in URL, and make SSHFile.__enter__/__exit__ reentrant across all SSHFile instances sharing the same underlying connection