A grab-bag of `@fluent/dom` updates by eemeli · Pull Request #655 · projectfluent/fluent.js

This will need a rebase once #652 and #653 are merged. Only the last four commits are really part of this PR.

The library is refactored as TypeScript. As discussed in #470, it continues to be effectively in maintenance-only mode, but it's here at least aligned with the other packages in terms of code style, and with the DOMLocalization implementation in Firefox.