Add GotNode, make GitError verbose, refactor to add run() to nodes

Few new tests and other cleanups