Take a backup of the db and root directory at start of each fab deploy,
keeping only one previous backup.
Further tidying of fabfile.deploy function as suggested by Hamish:
- Added check_for_local_changes() (called from overriden fablib.deploy)
- Create env.project_root using existing fablib function, not manually
- Stop calling the following from fabfile.deploy because an equivalent is called from
  tasklib.deploy()
    - collect_static_files
    - update_db
    - load_fixtures
Also, added a new function for testing fabric deploys on localhost via
'fab dev deploy'.
Merge pull request #91 from jogwen/backups_for_fab_deploys

Backups for fab deploys, tidied fab deploy, and new function for testing fab deploys locally