Mutant

Fixes #2142
Fixes #2193
This keeps mutant.js loading local to the designer, and moves the selectElement handling when a new brick is added to the phone to *only* in mutant.js (based on the added event) instead of making ceci-app responsible for this.

Relatedly, I moved firebase here as second "fix" for the whole mutant.js not loading when firebase fails.
Luke found this in another bug. The above querySelector only works in chrome.

In FF this querySelectorAll won't look inside web components, so direct children of ceci-card is 0.

The fact that the above code is for a chrome only case means it actually works, kinda, but imo is a red flag and I wanted to point it out in case it sparked something.

However, landing your bug as the old code did the same querySelectorAll