Fail informatively in #respond_with when no appropriate #api_behavior renderer is available.

Currently if a user calls `#respond_with(csvable)`, but has not csv
renderer available, Responder will just run through the `#default_render`
behavior twice, raising `ActionView::MissingTemplate` both times.

This changes `ActionController::Metal::Responder#api_behavior` to check
in advance whether there is a renderer available, and raise
`ActionController::MissingRenderer` if not.

Ran into this issue last night, and found that a number of others have as well:

http://stackoverflow.com/questions/5182344/rails-3-how-to-respond-with-csv-without-having-a-template-file
https://groups.google.com/forum/#!topic/rubyonrails-talk/yN0SaPzHV_g
http://blog.crowdint.com/2012/03/06/responding-to-csv-in-rails-3-with-comma.html

One thought: should I reference `ActionController::Renderers.add` in the `MissingRenderer` message?

Also split up the mime_responds_test file.