From first principles: Why I bet on Scala.js