REFACTOR: shutdown to be more deterministic and rely less on GC

- Change mprServiceEvents(SINGLE_EVENT) to not block and service all pending events
- Deprecate MPR_SERVICE_ONE_THING and add MPR_SERVICE_NO_BLOCK
- Change mprGC to return number of blocks free in last sweep