Ignore empty lines (for now).
Add a parser for horizontal rules.
Simplify regex.
Don't change the contents of blank lines.
Preprocess input before parsing.
Simplify blank line parsing.
Blank lines should end paragraphs.
Trim paragraph contents.
Remember: Tabs will have to be replaced by spaces.
Use Text helpers for blockquote parsing.
Let blank lines close blockquotes, too.
Store collection of lines in paragraph.
Store a line's contents in a blank line.

There can be spaces, and the number of them will be interesting for indented code blocks.
Implement indented code block parsing.
Properly remove leading whitespace when adding blank lines to code blocks.
Work on trailing whitespace in code blocks.
Indented code blocks can not interrupt paragraphs.
Escape HTML in code tags.