Basic infrastructure for error reflection in compiler

I'm submitting this PR now so that things like parser changes and test numbering doesn't get out of sync, but the extension doesn't do anything yet. I plan to get it implemented as soon as possible.

If you'd rather wait until it works to merge, I totally understand.