MODULES-1571 Add Git Facts

Add some tests for the facts, and refactor the facts a bit to make them easier to test :+1: 
this is so confusing. i had to look at this 3 times to realize what we're distinguishing on.
can we just put the 'nul / /dev/null' into a variable, instead of the whole command?