Make MemMapFs.Remove() error for non-existent file

So that it's consistent with the os package.
diff --git a/fs_test.go b/fs_test.go
index 36925e6..ec8e235 100644
--- a/fs_test.go
+++ b/fs_test.go
@@ -122,12 +122,20 @@
 
 		err := fs.Remove(path)
 		if err != nil {
-			t.Fatalf("%v: Remove() failed: %v", fs.Name(), err)
+			t.Errorf("%v: Remove() failed: %v", fs.Name(), err)
+			continue
 		}
 
 		_, err = fs.Stat(path)
 		if !os.IsNotExist(err) {
 			t.Errorf("%v: Remove() didn't remove file", fs.Name())
+			continue
+		}
+
+		// Deleting non-existent file should raise error
+		err = fs.Remove(path)
+		if !os.IsNotExist(err) {
+			t.Errorf("%v: Remove() didn't raise error for non-existent file", fs.Name())
 		}
 	}
 }
diff --git a/memmap.go b/memmap.go
index b12969c..4513b15 100644
--- a/memmap.go
+++ b/memmap.go
@@ -178,6 +178,8 @@
 
 	if _, ok := m.getData()[name]; ok {
 		delete(m.getData(), name)
+	} else {
+		return &os.PathError{"remove", name, os.ErrNotExist}
 	}
 	return nil
 }