Closures instead of temp dictionaries

Removed dictionaries (leftover from `performSelector:`) and dropped support for sync installation, as nothing was using it.
Sorry. It can always be amended later, but what was changed was pretty much in line with the existing codebase and Apple's/Xcode Objective-C standard formatting rules. The diff seemed quite minimal not counting whitespace (tabs > spaces) so I just went ahead and merged it.