Store type in node, update var names accordingly.
Separate out typedefs.

We do this so we don’t have to worry about order of declaration.
Add syntax error.
Sort alphabetically ;)