Separate git helpers

The git_helpers files has been getting long. Split into 4 different files
- git_command_helpers - any function that calls run_command or calls a function that does
- git_predicate_helpers - functions that return true/false
- git_required_status_helpers - functions that require a specific status and otherwise error
- git_status_helpers - functions that return anything but true/false

What is and is not a feature branch is based on the configuration. I wanted to keep `branch_helpers` as just functions that run some form of `git branch`.