Font cache bust

* When new font-files are pushed out, this removes the old font from localStorage and adds the new one.
* It works by checking the cache busting hash on the WOFF filename (font files always change in tandem), and re-loading if it's different to the hash in localStorage.
* Refactor Font module to be closer to standard module pattern.