Block update method added because I'm not a fan of delegates.

You can set the property "counterUpdateBlock" to execute at the same point the delegate would get called.

I've also updated the demo code with an empty (commented out NSLog) block.