Enable on-demand loading of subfolders

Signed-off-by: Sven Strickroth <email@cs-ware.de>
Introduce CSmartAnimation for starting, showing as well as automatic hiding and stopping

Signed-off-by: Sven Strickroth <email@cs-ware.de>
Introduce libgit2 smart wrapper classes

This commit also tries to simply code where the new smart wrapper classes allow it.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
Introduce GetGitRepository method in CGit

Signed-off-by: Sven Strickroth <email@cs-ware.de>
Reuse existing repository instance for GetHash and GetMapHashToFriendName

Signed-off-by: Sven Strickroth <email@cs-ware.de>
Fix possible resource leaks (by using CSmartHandle)

Signed-off-by: Sven Strickroth <email@cs-ware.de>
Handle return codes of RunAsync

Prevents us from working with invalid handles.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
Refactored

Reduce indention, use unique_ptr and return as early as possible.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
Don't break compilation in VS2012

Signed-off-by: Sup Yut Sum <ch3cooli@gmail.com>