Replaces many loops of the form:
```js
for (let i = 0; i < elements.length; ++i) {
const i = elements[i];
...
}
```
with:
```js
for (const element of elements) {
...
}
```
Mix of a horrible regex based find/replace and manual touch ups
* Enfoce node boundries in places where it matters
* Flip defualt emmet includeBoundries to true
Explicitly set getNode's include boundries where needed
* Remove defualt papameter
* Add update image boundry tests
* Add tests for bondries on some of the tag actions
* Rest of tag tests
* Start moving emmet to strict mode
First part of moving the emmet extension to strict mode TypeScript. This change focuses on adding annotations when things can be undefined and removing jsdoc type comments
* Fix a few more errors
* Fix compile errors
* Tiny updates