basically `mkdir -p` + `touch`, written in Go