[REEF-2037] Make local file system deleteDirectory api recursive (#1474)

`DeleteDirectory` of `LocalFileSystem` does not do recursive delete unlike other filesystem implementations
  
JIRA:
  [REEF-2037](https://issues.apache.org/jira/browse/REEF-2037)
 
Pull request:
  This closes [1474](https://github.com/apache/reef/pull/1474)
diff --git a/lang/cs/Org.Apache.REEF.IO.Tests/TestLocalFileSystem.cs b/lang/cs/Org.Apache.REEF.IO.Tests/TestLocalFileSystem.cs
index cd17469..6272cb6 100644
--- a/lang/cs/Org.Apache.REEF.IO.Tests/TestLocalFileSystem.cs
+++ b/lang/cs/Org.Apache.REEF.IO.Tests/TestLocalFileSystem.cs
@@ -157,6 +157,33 @@
             fs.DeleteDirectory(directoryUri);
         }
 
+        [Fact]
+        public void TestDeleteDirectory()
+        {
+            var fs = GetFileSystem();
+            // Create directory
+            var directoryUri = new Uri(Path.Combine(Path.GetTempPath(), TempFileName) + "/");
+            fs.CreateDirectory(directoryUri);
+
+            // Create sub directory
+            string childDirName = "childDir";
+            var childDirUri = new Uri(directoryUri, childDirName);
+            fs.CreateDirectory(childDirUri);
+
+            // Create file
+            const string fileName = "testfile";
+            var fileUri = new Uri(directoryUri, fileName);
+            MakeRemoteTestFile(fs, fileUri);
+
+            //Create sub directory file      
+            var childDirFileUri = new Uri(directoryUri, $"{childDirName}/{fileName}");
+            MakeRemoteTestFile(fs, childDirFileUri);
+
+            fs.DeleteDirectory(directoryUri);
+
+            Assert.False(File.Exists(directoryUri.AbsolutePath));
+        }
+
         private IFileSystem GetFileSystem()
         {
             return TangFactory.GetTang()
diff --git a/lang/cs/Org.Apache.REEF.IO/FileSystem/Local/LocalFileSystem.cs b/lang/cs/Org.Apache.REEF.IO/FileSystem/Local/LocalFileSystem.cs
index 69a33ad..313fdd9 100644
--- a/lang/cs/Org.Apache.REEF.IO/FileSystem/Local/LocalFileSystem.cs
+++ b/lang/cs/Org.Apache.REEF.IO/FileSystem/Local/LocalFileSystem.cs
@@ -107,7 +107,7 @@
 
         public void DeleteDirectory(Uri directoryUri)
         {
-            Directory.Delete(directoryUri.LocalPath);
+            Directory.Delete(directoryUri.LocalPath, true);
         }
 
         public IEnumerable<Uri> GetChildren(Uri directoryUri)