Correct trace semantics

Previously,

   traceScope "Z" $ return ()
   readScope

would have resulted in ["Z"]. That's incorrect, it must be [""].

Also in order to have a sensible Alternative instance, it is necessary
to accumulate multiple traces, one for each code-path tried.
Version bump
Fix typo in Show instance for ErrorTrace
Version bump :(
Add FreeTrace.hs
Remove comments for now
Formatting
Fix build
Fix exports