this addresses a few things:
1. editting a locked note was excruciatingly slow due to synchronous crypto
2. libsodium is, unfortunately, synchronous hence it locks the UI
3. quill was sending unnecessary onChange events on every key stroke
How they are handled:
1 & 2. all crypto related functions have been moved to a web worker for asynchrony with synchronous as fallback
This allows for non-blocking crypto and fluid editting experience
3. onChange events are only sent when user stops typing
KNOWN ISSUES:
1. The word counter may be a bit slow. It should be moved into quill as a module.