func Remove(name string) Operation {
	return Operation{code: opRemove, name: name}
}
Remove returns a new remove operation. The name is a slash-separated
path relative to the Dir. Remove operations on directories are recursive.
package filesystem
import (
	"fmt"
	"io"
	"io/ioutil"
	"os"
	"path/filepath"
	"strings"
)
type Operation struct {
	code opCode
	name string
	arg  string
}
func Write(name, content string) Operation {
	return Operation{code: opWrite, name: name, arg: content}
}
func Mkdir(name string) Operation {
	return Operation{code: opMkdir, name: name}
}