Add railtie and Rails entity and metastores

A few of the Rails maintainers would like to move the rack-cache configuration out of Rails master and into the rack-cache gem. See the discussion at [#12365](https://github.com/rails/rails/pull/12365)

This PR does two things:

1. Adds a railtie that positions Rack::Cache at an appropriate place in the Rail's default middleware stack (after AD::Static, AD:SSL, and Rack::SendFile)

2. Copies the Rails entitystore and metastore classes that were previously inside of action_dispatch/http/rack_cache.rb. I updated the entitystore to take a ttl argument.

LMK what you think. Alternatively, this all could be placed into a rack-cache-rails gem.