Add more functions to git status.

1) Add function to check if the tree is clean or not.
2) Add functions to get staged, unstaged and untracked changes.
Add reset function to git index.
Update git pull.Update git pull.Update git pull.Update git pull.Update git pull.Update git pull.Update git pull.Update git pull.
Add git config.
Refactor to use new git config.
Rename GitConfig => Config
fix bugs.
Merge branch 'master' into git_pull3
Merge pull request #916 from dart-lang/git_pull

More work on git status, git config.