Modified parse tree to simplify parsing

Added a bit for indirect/direct state to collapse
multiple parse trees that were growing exponentially.

This lets the `let` syntax be added pretty trivially.