environment should be modifiable
implement constructor/destructors of ASTs
split environment class into two of global and local environment classes
cleanup declaration of objects
explicitly declare object class be abstract
use range-based for loop instead of normal for
reorganize environmental class tree
implement environments and variables