Add recursive parameter to DeleteItem to allow recursive directory deletes

* Changing to use System.IO.Abstractions