Remove the application cache watchdog logic from the Schema bootstrapper and move it into the Encapsule app cache monitor class where it should have been in the first place. Also, take another shot at sifting through all the special cases that seem to manifest as the result of connection speed race conditions as well as the seeming ambiguity of Firefox to signal completion after taking an update. I'm nearly certain this is still broken. Hopefully it's good enough because writing this sort of state machine model is precisely why I'm doing this project. It completely sucks and it's very difficult to get it right unless you invest a ton of time testing all the corner cases.