MD022 - Headers should be surrounded by blank lines

Fixes #9

Because kramdown doesn't parse headers that don't start on a block boundary,
there is some code to manually check text blocks for things that look like
headers, and it checks to see if they have blank lines before.