Add user authentication

TODO 
- [x] Gravatar on client side
- [x] add logout
- [x] add default avatar url
- [x] Login w username
- [x] Error handling on client

Moved to another Pull Request:
- [ ] Redirect favorite feature to auth
- [ ] Build a page for favorites