rebased with upstream tests
removed unnecessary expression
cleaned up docs
making sure things break when there are unbalanced expressions in a template. Need to fix how this is handled, tests currently fail.