Ticket 6953: Support Method Not Allowed Responses

Hi,

I was wondering if someone wouldn't mind looking at ticket 6953
and committing it if everything looks ok:

   http://dev.rubyonrails.org/ticket/6953

This patch properly handles setting the Allow header and the
proper status code when an HTTP method is used that a resource
doesn't support or understand.

I still don't like the code yet. I don't know what it is, but it
doesn't seem like the best way to patch it in.