Windowing; web; add tab/focus visibility notifiers. this uses the page visibility API and only works on tabs and in browser focus. the entire browser losing focus won't notify of these (:todo:)
Windowing; remove hardcoded margins and move to template instead
App; move native sleep into Snow class for more consistency when not in focus etc.
Snow; add stop-the-world freeze flag which stops audio, and updates. currently doesn't stop events as this would cause subsequent events (i.e press a key to resume) to never arrive at all.
Tests; make freeze happen on losing focus
Audio; web; add suspend/resume handling on web
Audio; web; fix bug with looping flag not being set correctly