Initial code for new grid-type boinc. #3540

Gridmanager and condor_submit now recognize new grid-type 'boinc'.
The gridmanager has new classes BoincJob and BoincResource, and
understands new boinc gahp commands. Large chunks of this code remains
to be written.
Additional code for new grid-type boinc. #3540

All gahp command handlers implemented.
Major pieces remaining:
* Coordinating batch submission.
* Lease renewal.
* Failure recovery.
More work on new grid-type boinc. #3540

* BoincAuthenticator attribute
* Support talking to multiple Boinc servers
* Updates of gahp protocol
* Add batch-management code, including submission and lease renewal
Correct some boinc gahp command names. #3540
Merge branch 'V7_9-gt3385_boinc-branch' into master-gt3385_boinc-branch
Fix some bugs in gridmanager boinc code. #3540
Merge branch 'master' into master-gt3385_boinc-branch
More changes in the gridmanager boinc code. #3540
Better failure handling for boinc jobs during submission. #3540

If we restart during submission and and boinc server is down, don't stay
stuck waiting to find out if the submission succeeded.
Retry boinc batch query on "no batch named" error. #3540

The query is retried without the offending batch.
Fix boinc lease management and other timer values. #3540
Remove unnecessary code and data in BoincJob. #3540
Issue Boinc retire batch command when last job is done. #3540
Merge branch 'master' into master-gt3385_boinc-branch
Update BoincResource timer values after merge from master.
Allow multiple "important" command sockets. #3982

Not yet useful...
Track lists of socket pairs, not just one #3982
SockPair now manages de/alloc of Safe/ReliSocks. #3982

Now that the SafeSock and ReliSock for a command port are collected
inside a vector of SockPairs, it was getting a bit muzzy who owned the
memory.  Now it's SockPair, always. This will simplify teaching
DaemonCore::InitCommandSockets to return a vector of SockPairs.
InitCommandSockets can now return a list of sockets

...at least the API supports it.  It still only returns one thing, and
other code will likely break when it returns more than one thing.  But
this is a step toward returning sockets on both IPv4 and IPv6
simultaneously. #3982
Merge branch 'master' into master-ipv6-mixed-mode

Also changed some #warnings into PRAGMA_REMIND for portability.