def halt(new_status = nil, new_body = nil, new_headers = {})
			status new_status if new_status
			body new_body || (default_body_of_nearest_route if body.empty?)
			response.headers.merge!(new_headers)
			throw :halt
		end
def halt(new_status = nil, new_body = nil, new_headers = {})
			status new_status if new_status
			body new_body || (default_body_of_nearest_route if body.empty?)
			response.headers.merge!(new_headers)
			throw :halt
		end
Interrupt the execution of route, and set new optional data
   (otherwise using existing)
 @param new_status [Integer, nil]
   set new HTTP status code
 @param new_body [String, nil] set new body
 @param new_headers [Hash, nil] merge new headers
 @example Halt, no change status or body
   halt
 @example Halt with 500, no change body
   halt 500
 @example Halt with 404, render template
   halt 404, render('errors/404')
 @example Halt with 200, set new headers
   halt 200, 'Cats!', 'Content-Type' # => 'animal/cat'