Dried up some block code using Self.
Changed ConcreteBlock to use a generic closure.

The old behavior can be replicated by creating a custom closure with a
context and function.