Guard against empty user names.

This prevents a 500, which is always worrying on a log in page.
Merge pull request #133 from MastodonC/feature/user-nil-guard

Guard against empty user names.
Add new programme UI

- Fix sensor update in the API.
- Add timestamps to programme's create_at and updates_at