This allows for on_* to be defined by defining the corresponding instance method

directly.  Prior to this fix, doing this will result in "SystemStackError: stack
level too deep".

Example
module RedStorm
  module Examples
    class SplitSentenceBolt < DSL::Bolt
      def on_receive(tuple)
        tuple[0].split(' ').map{|w| [w]}
      end
    end
  end
end
Unfortunately, you can't alias a method that doesn't yet exist - so the closure is needed so you can do:

```ruby
class SomeBolt
  on_receive :my_method
  def my_method ; end
end
```

Without having to have defined my_method before calling on_receive.  I think the clarity of allowing the ordering shown above is worth the extra indirection.