I'll also note that the implicit conversion is not a problem here. It's that `JS("abc")` is always a quoted string in this new approach.

In the current approach all of these compile fine and are possible mistakes:
```
Map[String, JS](
  "a" -> j"a",
  "f" -> j"function () ..."
).toJS.v

Map[String, JS](
  "a" -> JS("a"),
  "f" -> JS("function () ...")
).toJS.v

Map[String, JS](
  "a" -> j"a",
  "f" -> JS("function () ...")
).toJS.v

Map[String, JS](
  "a" -> JS("a"),
  "f" -> j"function () ..."
).toJS.v
```