Correctly generate empty lines for syntaxt highlighted code blocks

Fixes #52

Currently, empty lines in syntax-highlighted code-blocks are generated as empty `<span>`s in the output, which causes them to not appear at all:

![screen_shot_2014-04-01_at_2_36_42_pm](https://cloud.githubusercontent.com/assets/38924/2580266/ad512c62-b9ab-11e3-9e69-05f73099e0d4.png)

The reason why this is happening is that [`buildLineHtml` is being called with the complete text of the code block](https://github.com/atom/markdown-preview/compare/iz-fix-code-block-empty-lines?expand=1#diff-ddc9dd0264ef4241a4a7fb6db97acd52L168), rather than the text for the specific line. 

This PR adds a failing test for this behavior, and fixes the issue by passing the correct text to `buildLineHtml`.

Two notes:
* I needed to explicitly [specify `htmlEolInvisibles`](https://github.com/atom/markdown-preview/compare/iz-fix-code-block-empty-lines?expand=1#diff-ddc9dd0264ef4241a4a7fb6db97acd52R170) because otherwise exceptions were thrown [here](https://github.com/atom/atom/blob/d146faae1d23998864b9fe2ac3ee7d1350f61dd7/src/editor-view.coffee#L1550)
* The [last tokenized line is removed](https://github.com/atom/markdown-preview/compare/iz-fix-code-block-empty-lines?expand=1#diff-ddc9dd0264ef4241a4a7fb6db97acd52R168) because that last line is generated for the newline between the last line in the code and the closing codefence ```. Without removing that last line, the output looks like this:

![screen shot 2014-04-01 at 4 45 02 pm](https://cloud.githubusercontent.com/assets/38924/2580319/45a51abe-b9ac-11e3-8d3a-1b43805c64d3.png)

(notice the extra line at the end of the rendered Markdown, below `baz`)