Use Rack::File#serving method
Use Rack::File#serving method

The API of `Rack::File#serving` has been changed to take two
arguments: `request` and `path` of the file. `Rack::File` would then
interpret the file path based on the root path supplied to it's `#new`
method, and the `path` value passed into the `#serving` method.

This change also sets the root path to the app root path.

This reverts the earlier change to use `Rack::File#call` method because
it appends the route path fragment to the root path provided to
`Rack::File#new` and considers that as the file path for the static
file. Also, it doesn't work with POST requests of static files, which
Sinatra does. So we can't quite use it without modification of the
method.

JonMidhir/sinatra,ryanshaw/sinatra,jkowens/sinatra,JonMidhir/sinatra,jkowens/sinatra,jkowens/sinatra,mwpastore/sinatra,mwpastore/sinatra,burningTyger/sinatra,burningTyger/sinatra,sinatra/sinatra,burningTyger/sinatra,ryanshaw/sinatra,mwpastore/sinatra,JonMidhir/sinatra,sinatra/sinatra