4 spaces per tab
Pass error object to next() when it isn't a BadRequest.
Add combohandler#respond convenience method.
Explicitly test different kinds of errors before and after default middleware.
Use contentType method and charset property instead of res.header.
Move BadRequest into separate file, with inheritance test.
Give names to middleware function expressions to aid debugging and avoid arguments.callee.
Use path utilities to rewrite CSS url()s instead of custom algorithm.
Merge pull request #15 from zillow/prepare-for-middleware

Prepare for middleware with various tweaks to better match express conventions.
Extracts rewriteCSSURLs private function into middleware-ish bits.

Additionally, the middleware is only used in the combine middleware if a basePath config is provided.
Make cssUrls rewriter accessible as middleware.
Use URIjs's absoluteTo() method to resolve matched path.
Restore builtin path methods to CSS url() relative path resolution.
Add tests for cssUrls middleware that include Unicode characters.

This includes a note that our parser does not currently support the termination of a CSS hex escape with a space (as is necessary when using the shorthand syntax and the next character is a valid hex digit).
CSS url() function regex should always be preceded by a colon (as in a CSS declaration).

The rules around CSS declarations and allowed whitespace are crazy.
Add opt-in ability to rewrite import statements to cssUrls middleware.
Merge pull request #16 from zillow/cssUrls-middleware

CSS url() rewriting middleware
combo.combine returns an array of middleware.

Automagical middleware are now utilized in the same way as if they were external.
Add dynamicPath middleware.

This supports route params (e.g., :version) that point to different trees under the same filesystem root.
Return a BadRequest error when dynamic path is unresolvable.