NHS Hackday features

New frontend features:
- Improved keyboard display
- User customisable key map
- In browser editing of the key map
- Enhanced display of sample images
- Reset button

New backend functions:
- Ajax for key map manipulation
- Django south for database migration

Also, several bug fixes and code quality improvements.