fix new pull request to add new github_pull column
fix validate_id to use formattedWrite properly
refactor runCurlPOST and add runCurlPUT
move toggle_auto_pull to serverd
add support for executing the github pull merge

1) When toggling a pull auto merge state, if turning on and the project allows auto merging, check for complete passing tests
2) On test run complete, check for auto merge on for both the pull and the project, check for complete passing tests

For both, if all three checks pass, call the github pull merge api.
convert to https urls
fix formattedWrite calls
factor out empty string validation
parse http cookies into the userhash
add access_token column to github_users as part of session management
add support for http request headers
add github app client id and secret to the config file
add login/out support
refactor curl and github interfaces

1) fold runCurlGET into runCurlMethod
2) split retry loop out of runCurlMethod
3) pull github api calls out of several callsites into github_apis.d
more auto pull changes

1) change github_pulls.auto_pull from a bool to a userid reference
2) pull merge logic into github_apis.performPullMerge api
3) reset auto pull permission when a pull request is updated
4) enable actually performing the merge

x# Please enter the commit message for your changes. Lines starting
catch sigterm and shutdown gracefully
prioritize pulls set to auto-merge
switch from remote_addr to cookie and csrf based auth
convert github_apis into a class.  pull more github apis from update_pulls into github_apis
validate that the user has permission to perform the merge before toggling it