add markdown style links to railroad diagrams

With these changes you can put markdown style links in the text of terminals and non-terminals in the railroad diagrams DSL, ie:
T: here's a [link](https://google.com/) and [another] one

Note that you'll have to add CSS to style the links so that they're visible (BTW: it seems that when a spec has multiple RR diagrams, the CSS for them is duplicated...).

It seems that bikeshed is stripping the namespace from the link's href attribute, so these links don't actually work at the moment. I'll leave sorting that out to you :-)

While I was there I also made it pretty print the svg output of railroad diagrams (you can disable all formatting by passing None for the indent) and fixed a bug in the DSL error checking.
Also forgot to update this line changing the error message to 'Command optional-prelude:'