Abstracted HTML rewriter

This is a first pass at taking the `asset_hash` code for finding URLs in documents and replacing them and making it available to the rest of Middleman.

The first pass, included, is to provide a generic URL rewriting Rack Middleware. I'm planning on abstracting this further to operate on a plain string.

This will let us to things like `asset_url` or `cache_buster` without Compass and directly on the output HTML.

Thoughts? @bhollis @karlfreeman