First pass at UI for to-do list.
Switched to Django project structure. Added Task model.
Added index view for tasks.
Added static folder to .gitignore.
Bound Backbone views to tasks that are already rendered on the page.
Added requirements.txt.
Set up initial API with tastypie.
Allow missing slash for API URLs.
Set up Backbone models to work with the API.
Set always_return_data to stop getting error callback whenever creating a new task.
Prevented popping up a delete confirmation dialog when canceling creating a new task. Included better logging for Backbone.
Added comments for Backbone. Included data-id attr for todo item views. Made fix to remove a new todo item from collection if user aborts creating it by leaving a blank title.
Added Redis with config.
Persistence for task done-ness (and active-ness) now delegated to Redis. Removed done field from main DB.
Added Redis dumps to .gitignore.
Added boolean field to tasks to indicate if a task is routine.
Added tracking of completion times for tasks.
Removed obsolete tasks helpers.
Made some Redis operations atomic. Refactored some methods on task model for faster reads and fewer unnecessary operations.
Renamed routine to is_routine on task model to match convention. Moved some CRUD operations to a hopefully more correct place in API code.