Skip most failing test cases

Focus on one failing test case at a time.
Add comment
Refactor nodes
Store declared types to variable nodes

As a side effect, remove is_def flag from lvalues with explicit types.
The is_def flag should probably be renamed to is_inferred_type or
something like that.
Enable test cases