WIP
Merge remote-tracking branch 'origin/master' into feature/cache-controls
WIP

- some cribbing from Sinatra going on for sure.
Ensure that included modules can use Action features
[ci-skip] Remove unnecessary test fixture
Assign redirect location reducing object allocs
Since it's possible to define :public and :private directive, we should ignore public directive in favor of private directive (it's not official on RFC)
including value directives min-fresh and max-stale
Expires now considers value directives min-fresh and max-stale
Creating a PORO to store directives and deal with all rules envolved
Allowing value directives
Allowing non value and value directives
Handling time value and other formats
dashirizing non value directives key
Using directive class instead of have all the logic here
just new lines
simple etag implementation
Ensuring that fresh method keeps or includes the ETag header into response headers
Some refactorings
WIP: LastModified header