Adding support for 'do'
If a symbol is bound within the f/el, we look it up in the state map
Maps have to be handled separately from collections
I think fn-calls are better determined by '(seq? form)' than '(list? form')?
Adding in helper functions for destructuring bindings