Update .gitignore and remove cruft

The previous gitignore had some weird merge conflict lines that
have been removed.

In addition, new local-only files (such as ansible vars and
local_settings) have been added to prevent people from making
silly mistakes
Use versioned requirements from pip freeze

The canonical way to deal with requirements is to use
pip freeze:

source /path/to/env/bin/activate
pip freeze > requirements.txt

In this case the mysql requirement was *removed*. Instead
this requirement will be installed by the provisioner.

Note non-project related eggs should be installed globally
or removed manually from requirements.txt (such as ipython)
Split settings up in regular and local settings

Many settings are actually global and required for the app to run
correctly. The sane defaults for these are now in settings.py.

Other settings that change on an app-to-app basis have been moved
to "local_settings.py" ("local_settings.example.py").

Also note that the sunlight labs API key can now be inserted
directly into the local_settings file.
Add default Vagrantfile and shell provisioner

Vagrant is a virtual machine management tool (http://vagrantup.com)
Adding a Vagrantfile directly to the repository allows us to say:

vagrant up

And get a fresh vm to work with
Create ansible provisioning setup

Ansible is a new up-and-comming provisioning system (http://ansible.cc).
It makes similar guarantees to Chef or Puppet (such as idempotentcey)
but do all of their configuration in a sexy yaml format.

The current setup integrates will with vagrant. The basic steps to
get a working StateRep.me installation boil down to:

cp playbooks/ansible_vars.example.yml playbooks/ansible_vars.yml
$EDITOR playbooks/ansible_vars.yml

vagrant up
scripts/vagrant-ansible

And then head on over to: localhost:6060 and you're golden.