Patch 1/4 still needs to be merged into 2/4.
The BroadcastSystemMessage() calls seem to have been inadvertently removed in 2/4, and the split isn't quite complete—it still introduces DBT_DEVTYP_HANDLE support in plugplay_send_event(). Ideally separating the new_event() helper would also be a separate commit, so that you're not moving code and changing it at the same time.