Initial api review

This pull request represents a very rough first pass at reviewing the API. It lumps some features into our "Extension API", hides obvious low-level features / private internals, and lumps everything else into "Experimental API" category.

The next step will be to do another pass through the API and decide which methods to bless to "Stable API" status, i.e. the API we're going to commit to remaining compatible across all of 1.0. I'm going to be pretty conservative about that, focusing only on Prawn's more fundamental features.

This represents a starting point, not a final decision. I'll open up a mailing list thread for discussion once I've done the initial Stable API pass.

For now, I'm going to merge this into master but keep the pull request open in case anyone spots problems or has questions about the changes. I want to merge because this touches almost every file (albeit in a trivial way) and I don't want to deal with merge problems in the coming days by leaving this unmerged.