bot: added StringLineReader
bot: collection internals - making _FuncEnumerable a bit more flexible
BREAKING: bot: Util.splitLines returns Iterable<String> instead of List<String>
hop_tasks: dartdoc: removed TODO that has already been addressed
bot_git: TreeEntry learned toString
bot_git: Commit parses a lot more information
bot_git: better detection if the provided dir is a git dir
BREAKING: bot_git: GitDir can only be created via paranoid async factory
BREAKING: bot_git: GitDir paranoid about runCommand arguments
hop_tasks: dartdoc: removed unneeded new Future.immediate
hop_tasks: startProcess: takes a TaskLogger instead of a TaskContext
bot_git: GitDir learned populateBranch
hop_tasks: getCompileDocsFunc is finally using GitDir exclusively

finally!