Add and test subscript expressions.
Clean up type traits.
Clean up call expression evaluation.
Make subscripts lvalues. Fail on out-of-range subscripts.
Test reference mutation via lists.
Test and fix parsing calls and subscripts.
Add whitespace to unit tests for easier navigation.
Rename tests.
Parse and evaluate map lookups.
Fix whitespace.