ASP.NET Core 2.0 Hosting: Deleting Files With Events

While writing this utility I found and worked on speed issues, almost all relating to updating the user interface.
hostforlifebannerProcessor Class
I added a new class in the .Utility.IO namespace called Processor. The purpose of this class is to copy, move and delete files while firing events that can be used to update the UI. Unlike other methods I have used in other frameworks if an exception occurs, it fires an event and keeps processing.

First I created the event,

This new class helped my utility go from deleting 1K files per second to up to around 2K per second!