Git.Dialog.*, templates.jqote: Removed fromGit property of message (refs #16 #17)

For detached head and current branch without a commit to work we will need the CommandQueue to catch an error and send it with the callback. These errors will clearly not be sent from git CLI.
AbstractDialog and CommandQueue now deal with Tada.Git.Error.UserMessage errors (refs #16 #17)
Tada.Git.Entity.Branch and Tada.Git.Entity.Repository now throw Tada.Git.Error.UserMessage when needed (refs #16 #17)

Branch#getLatestCommit() -> because repository is in "git init" state
Repository#getCurrentBranch() -> because repository is in detached head state
Branch#setCommits also now allows to have an empty array as an argument
CommandQueue: It now wraps the callback so it can be called in exceptional situations (refs #16 #17)

The problem came from async.js, who does not let callbacks called more then once
RepositoryRepository: it now correctly creates model in detached head or commitless situations (refs #16 #17)
ShowVersionControlSummary now works correctly in detached head or commitles situations (refs #16 #17)

UpdateVersionControlInfoTest had to be updated to match changes in ShowVersionControlSummary.
Tada.Git.Entity.Repository now has a hasCurrentBranch method
CreateAndSwitch: It can now deal with plain text errors from the command queue (refs #16 #17)
List Branches: It can now still show up in detached head or commitless branch situations (refs #16 #17)

DataSource can now "sort" branches and repos according to their last commit even if it does not exist
list.jqote (classic and vanda theme): Catch Tada.Git.Error.UserMessage, also use hasCurrentBranch when possible