git wrapper moved to its own file