Wouldn't this reset results in situations where there are multiple plugins and $plugin->does('HasRequestHandler') is false in the middle of the for loop?