Bug 1037338 - Installed apps arent added to smart collection

Having been bitten by this in this app before, this looks a bit dangerous. I think we should still run the homeIcons.init() promise, it will just return a no-op if it's already been run. Maybe just guard against the constructor.