Extract compass

Really happy with this PR. Started by extracting Compass support into a `middleman-compass` extension, which required rewriting a bunch of features in Ruby (which we mostly already had) instead of relying on Compass. Lead to nice cleanups all around and heavy usage of the Inline Asset rewriting middleware.

Once this is merged, I'll actually move `middleman-compass` into its own repo. The question is, do we reference it in the over-gem `middleman` or require users to add it to their Gemfile?
Let's just stick requires at the top of the file, since they already get lazy loaded by `register`.