Wait for the database to load before sending talkilla.worker-ready to the sidebars

Based on top of PR #369

Completes the work to fix intermittent failures caused by trying to sign in and store the SPA details when the SPA database hasn't been loaded.

The basic idea is to wait for the database load to complete before sending `talkilla.worker-ready`. This ensures everything is in the correct state. The sidebar code already waits for `talkilla.worker-ready` before showing the sign-in UX, and the functional tests wait for that to be displayed.