Various improvements to the JSON code and test reporting bits

shouldn't we be consistent about using strings or symbols? any pros/cons? I suppose symbol has more overhead due to interning?