Support language attr on fenced code block line

The following syntax should now be valid:

    ```lang
    CODE HERE
    ```

And generates:

    <pre><code class="lang">CODE HERE
    </code></pre>

This syntax allows support for GitHub Flavored Markdown style
fenced code blocks used on [GitHub][1].

[1]: https://help.github.com/articles/github-flavored-markdown
Support dashes & underscores in lang name.

Also allow lang name to be spaced after fence.
Merge pull request #78 from lsegal/gfm-fenced-code

Support language name as attribute on fenced code block start line