Pluggable parsers

As discussed in pull request #353, I tried to add support for pluggable parsers to prawn.

The critical question is, where to put the new parser management code. I decided to use the existing module `Prawn::Text::Formatted`, because parser management really belongs to the other code related to formatting. All in all, I tried to make as few changed to prawn as possible.

Also, you might want to take a look at: [prawn-html5](https://github.com/cs/prawn-html5) - I created a new Gem called prawn-html5 which depends on the changes of this pull request and supplies the modified parser I suggested before (in pull request #353).

Finally, I've created a small small Rails application to demonstrate the use of `prawn-html5` with HTML5 compatible WYSIWYG editing. See [prawn-html5-example](https://github.com/cs/prawn-html5-example).

This isn't finished yet. There are still a things left to do. Please tell me what you think so far!