Return headers to subroute callers

Without this change, methods that are subrouted to cannot
change the headers, b/c they are never returned to the caller.

This change allows code like this:

get '/company/apples' do
   param :format, String, in: [ 'csv', 'json' ], default: 'json'

   if format == "csv"
      headers 'Content-Disposition' => "attachment;filename=apples.txt",
              'Content-Type' => 'application/octet-stream'
      return Models::Apples.to_csv
   else
      return Models::Apples.to_json
   end
end

get '/apples' do
  subroute!('/company/apples')
end

The end-user can then get '/apples&format="json"' to return json or
just get '/apples' for the default (json in this example) response.
Merge pull request #12 from svrana/return-headers

Allow subroutes to change headers