Honor ':vcs_info:*:prompt:*' 'check-for-changes'

Skip heavy Git actions and display a "?" when (un)staged changes are
unknown.
prompt: remove unnecessary color toggle
theme: use `command git` instead of `git`

The latter would use hub (a Ruby program) through the git() function.
vcs_info: only enable git, dynamically set check_for_changes
github plugin: use `whence -p git` for vcs_info

And not the git() function setup to wrap `hub` (Ruby).