bumping to 0.0.9.
give each roar controller subclass its own options

The `represents_options` hash is shared between
all subclasses of a controller that includes
`Roar::Rails::ControllerAdditions`

Break that relationship, but only if the subclass
decides that it wants to represent something else.

This behavior is critical in applications where
you want to enable roar in every controller by
including `ControllerAdditions` into
ApplicationController
using hooks/inheritable_attribute since AS's class_attribute sucks.
Don't try to represent empty resources.

Rails 3.1 and below erroneously call `#display`
for HTTP requests which are guaranteed to have an
empty body (PUT, DELETE). Instead of passing the
resource specified in `respond_with` it passes
the empty resource (in the case of json, '{}') to
`#display` as a string.

This causes roar-rails to complain that there is
no StringRepresenter. Add a check to to make sure
that we aren't handed the empty resource before
attempting to represent.

This check is not a slow down in Rails 3.2 and
greater because the `#display` method is never
called for PUT and DELETE
use VersionStrategy pattern for responders.
bumping to 0.0.10.
changing IO handling in #consume! so that we no longer call request.body.read but .string. there have been some issues where read would return no document although input was returned with #string.
while most users of #consume! won't have any changes, unicorn users might have to change there controller code to contain

class CompaniesController < ..
  def incoming_string
    request.body.read
  end

since otherwise they might get problems as unicorn's IO model doesn't support #string. see https://github.com/apotonick/roar-rails/issues/18
Change incoming_string function to support other web servers
releasing 0.0.11.