Bug 837678 - [cost control] Implement new startup loading events

So by looking at these events all being triggered right in a row, I assume a few things about this app:

1. The entire UI, including chrome and the core interface, is all visible or injected at once.
2. The core UI has no user interactive elements.
3. The user can only interact with the chrome.
4. Once the UI is visible, no other loading or processing takes place. This also means that the events for the chrome are bound **before** hitting `moz-app-loaded`.

Are all of these assumptions correct? I am a little suspicious of the 4th item.