Introduce GIT_MERGE_CONFIG_* for merge.ff settings

git_merge_analysis will now return GIT_MERGE_CONFIG_NO_FASTFORWARD
when merge.ff=false and GIT_MERGE_CONFIG_FASTFORWARD_ONLY when
merge.ff=true
Move GIT_MERGE_CONFIG_* to its own enum
Use a config snapshot
Staticify `merge_config`
Modify GIT_MERGE_CONFIG -> GIT_MERGE_PREFERENCE
Merge pull request #2337 from ethomson/merge_ff

Introduce GIT_MERGE_CONFIG_* for merge.ff settings