- BUGFIX #2133 (@fourplusone) in smart_protocol.c
- added MSVC cmake definitions to disable warnings
- general.c is rewritten so it is ansi-c compatible and compiles ok on microsoft windows
- some MSVC reported warning fixes
- need_pack was not set to 0 when local fetch was already present causing  negotiate_fetch access violation
Do not allow git_branch_create() to force update branch
Add unit test to show git_branch_create() fails if attempt to force create current branch
Merge pull request #2144 from linquize/branch-f-current

Do not allow git_branch_create() to force update branch
Merge remote-tracking branch 'remotes/upstream/development' into development
- general.c reverted to original( before pr state )
- CMakeLists.txt small fix
cmake examples change so that general.c is off by default
caps: Rename to features to avoid confusion
caps: Rename the enum name too!
features: Rename `_HAS_` to `_FEATURE_`
Merge pull request #2150 from libgit2/vmg/features

caps: Rename to features to avoid confusion
Fix the description for `GIT_FEATURE_SSH`.
Merge pull request #2151 from arthurschreiber/patch-3

Fix the description for `GIT_FEATURE_SSH`.
- examples CMakeLists.txt reverted to previous state
Merge pull request #2141 from ravselj/development

BUGFIX - Fetching twice from the same remote causes a segfault