add a failing test for block name scoping
implement block namespacing, tidy up parser a bit, remove some S/R conflicts