Suspending queue before clear guarantees no stray operations.
Design changes for plugins.

For certain plugin APIs (mainly those that do not expect a return) we now execute them on an exclusive dispatch queue created by the plugin manager. The old model was to invoke in a background thread for each item. That design seemed overwhelming when there is a large number of calls being executed.