Minimal Google contacts loading capability

Despite what title of this PR suggests, the diff is actually quite large — I'm sorry for that. The patch features:

- "Load your Google Contacts" button
- Google Contacts API OAuth window
- auth token persistence
- retrieval of google contact email addresses
- update of current users list
- presence mapping for contacts
- basic abstraction to prepare moving it to a SPA worker (in the sense it's ready to be used right from within a subworker, except the Google OAuth authorization part which obviously relies on the DOM)
- removed `currentUsers` global from the worker, now a property of the `TkWorker` instance; still, this `currentUsers` object will need to embed its own logic later

Remaining work to be addressed in a next PR.

**Ready for review; suggested reviewer: @Standard8**