Some git services are ok with using paths in args instead of previously specifying it in spawning processes.
Use methods from Node libraries directly.
Make methods as thin wrappers to Git executable. Also pass the child process for easy stream operations to consumers.
Add methods for creation and deletion, covering metadata and file system.