Unicode literals everywhere!

When we change to python3 this will happen anyway.  There's also a good
chance this will fix some of the niggy little encoding problems that
happen when unusual characters get into beer names in the database!

We're still limited by what the Linux console will display, though.
Add "autolock" feature

Members of staff keep forgetting to press "lock" after finishing a
transaction or when leaving the till.

This commit introduces a new state: a register page can be "locked" - it
ignores all input apart from the Print key, but is still displayed.  If
the user presses Lock in this state, the blank lock screen is displayed.
If they touch their token to the reader, the page is unlocked.

The page locks automatically whenever a transaction is closed, and can
be locked manually by pressing the Lock key.