Nice.

What about an [OpenStruct](http://blog.steveklabnik.com/posts/2012-09-01-random-ruby-tricks--struct-new)?

```ruby
require 'ostruct'

def initialize
  yield(OpenStruct.new)

  if success
    response.success.call
  else
    response.failure.call
  end
end
```