Code review fixes
* Fix unit tests to not rely on actual dialog template existing
* Sort extension names case-insensitively
* Escape author name/link/id (required copying a small amount of code for escaping HTML
  since this is shared with brackets-registry)
* Other minor nits