Added ActiveResource.format= which defaults to :xml but can also be set to :json [DHH]. Added one-off declarations of mock behavior [DHH]

Nice work. I actually did similar work recently, but hadn't had the
cycles to contribute it back. I'll be sure to provide some feed back


Thanks. It could be great if people could put this stuff through the
ringer. I haven't had a chance to do a real thorough testing of it yet
in the wild.

I see that deserialization of error response bodies in validation.rb
hasn't been refactored yet to use the new format serialization
abstraction, ie. (below). Should I add something to Trac about this?

# Grabs errors from the XML response.
    def from_xml(xml)
      humanized_attributes = @base.attributes.keys.inject({}) { |h,
attr_name| h.update(attr_name.humanize => attr_name) }
      messages = Hash.from_xml(xml)['errors']['error'] rescue []
      messages.each do |message|
        attr_message = humanized_attributes.keys.detect do |attr_name|
          if message[0, attr_name.size + 1] == "#{attr_name} "
            add humanized_attributes[attr_name],
message[(attr_name.size + 1)..-1]

        add_to_base message if attr_message.nil?

I added a couple of issues to Trac (9681, 9683, 9684). 83 and 84 are
relevant to your format work.