Closures instead of temp dictionaries

Removed dictionaries (leftover from `performSelector:`) and dropped support for sync installation, as nothing was using it.
This isn't bike shedding, it's consistency. The codebase was majority detached braces and I recently standardized it to that using clang-format. So newly added code should use the same formatting rules as the existing code.

I'd recommend installing Alcatraz + clang-format plugin for Xcode; you can enable clang-format on save right from the GUI.