Would be nice to actually have error types, for starters: * runtime * syntax and with this change we should also re-look at how errors are formatted...