Checking for document.visibilitystate and document.hidden don't work on iOS since JS gets "frozen" when the app is in the background.

Instead, use onpageshow for iOS.

Use onfocus for desktop.
Holy crap binding refresh to onfocus was a bad idea.

Only refresh when onpageshow, which effectively means on mobile when you unlock/maximize the tab.
Don't stop gulping when there's an error
Show the time as `15m 3:30` instead of `in 15 minutes`

The @johntyree fix.

Fixes #51.
Merge pull request #131 from luqmaan/wefwef

Wefwef