Move message key generation to State.addMessage
readme: s/bare-bones/simple/

We used to be bare-bones, we're a little bit more than that now.
Don't try to reconnect if the network is down
Make "Remove network" button red
Add /quiet and /unquiet
Mark server buffer as unread after server query command

When a command will print its reply in the server buffer, mark it
as unread to make it more obvious where to look.

Closes: https://todo.sr.ht/~emersion/gamja/53
Bump direct message unread priority
Ensure config has a server object

Simplifies code accessing the config.
readme: make it clear server.url can be a path in config.json
Reset config.server.auth when using custom server URL
Move auto-join field out of advanced options if pre-filled

Closes: https://todo.sr.ht/~emersion/gamja/82
Show again connect form when last server is closed
Add "auth" parameter to tune connect form
Add notification tags

This makes it so multiple messages from the same user will only
produce a single notification.
Add Notification workaround for Chrome on Android

Closes: https://todo.sr.ht/~emersion/gamja/78
Make Client.roundtripChatHistory return an array of messages
Make Client.fetchBatch more reliable
lib/client: fix batch cleanup
Linkify MOTD