Rewrite error output and move it to calc.c

Move the error output out of shunting-yard.c. Showing error messages
belongs in the CLI frontend (calc.c). This removes the need for the
`sy_quiet` global variable. Don't use `errno`, either.

The error output no longer has the visual column marker for showing
where the error occurred, since the code is simpler without it. Might
come back later.