Add initial Git.checkout()

For now it simply issues 'git checkout BRANCH'
Fix Git._run_git_command argument handling

When a single string is given as an argument (instead of a list)
we have to check for str _and_ unicode,
otherwise the string is exploded to a list.
Add Git menu WIP

TODO: After successful checkout and message
app.restart() doesn't work.