Add Emacs / Vim backup files to the .gitignore
Keep a config filename variable; make sure the file is promptly closed

It's useful to use the config filename in errors (e.g. in
the subsequent commit).  The other change is use the with
statement for opening the config file to ensure that the
file is closed immediately.
Check in settings.py for BASE_HOST being defined

Early versions of the code didn't rely on BASE_HOST
being defined, but after the introduction of the
instances application, it's mandatory, and you'll
get a 500 error from the instances middleware.  As
a result it seems to be worth catching this
misconfiguration earlier, to save anyone else some
time.
Add suggestions for BASE_HOST and BASE_PORT to general.yml-example
Use django-nose for running the tests

It's useful to be able to run particular test classes in
isolation, but using Django's standard test runner this doesn't
work with our structure of tests, where we have the tests in a
package.  django-nose allows us to do this, however:

  http://stackoverflow.com/q/5875111/223092

For example, we can just run the audio helper tests with:

  ./manage.py test speeches.tests.audio_helper_tests:AudioHelperTests