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.