factor out vardecl in parser
allow for loop iterators have annotated types
fix fornum generation so that the type of the iterator is calculated as the meet
of the initial,limit, and step values.

For loops are no longer desugared during specialization since they didn't significantly reduce
the amount of code needed to implement them.
tests for error messsages related to for loops.
fix disas to work on declarations.