Clean up some assertions
Mostly just removing extra type assertions or adding them to a better spot
Also addresses some missing semicolons that snuck in somehow
This adds a new (off by default) eslint rule that disables two specific types of dangerous type assertions:
```ts
<Type>{...};
{...} as Type;
```
These are bad because they can easily hide missing properties and strictness errors
Right now just adding this rule but will assign out fixes to owners in different areas of the code