Basic authentication infrastructure (insecure)

Implements the framework for authentication. For now its just authentication using just an email (no password or OAuth etc.)

Extends the data model to include users and an association between tasks and users and adds session handling so that the server-side is now a multi-user system, albeit and insecure one.

On the client-side adds front-end elements for login and logout that sit on top of a service for calling the server-side authentication API.