Refactored the Status code into its own controller

Refactored the Status code into its own controller and added support
for the "??" status from the "git status --porcelain" output.