Global options, configs and arguments

This pr adds the ability to specify arguments, configs and options at the repository level to be added to every command that go to the git binary. This should address the issue #62 

- [ ] change all the command instantiation and use the new factory