Block-based interface for NSUndoManager

@Raizlabs/maintainers-ios This is a block-based `NSUndoManager` extension. I've tested it in my current project without any issues, though it's important to ensure nothing is retained that you don't want to be retained within the block (but that's par for the course for blocks).