more location fixes for let*
fix some leaky state that tracks case-sensitivity between lexing passes, and tweak the test harness