Support dashes & underscores in lang name.

Also allow lang name to be spaced after fence.