Squashed commit of the following: V8_1-async_transfer, which adds overly execute and output transfer.  #4291

commit e8c5df4946457e46e0361866ca0393b00135e2ab
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Mon Apr 14 11:34:44 2014 -0500

    fix slot_type config for cp (there was a cut-n-paste error) #4280
    ===VersionHistory:None===

commit 9ae833da5da8f16ccf3c00c181155be759102687
Author: Zach Miller <zmiller@cs.wisc.edu>
Date:   Fri Apr 11 11:50:09 2014 -0500

    Use the more scalable job updater class for the chirp "phase" attributes #4291

commit 580ae66154d89d3c373133c436a698c8074f8125
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Fri Apr 11 11:13:02 2014 -0500

    Abort startd with reasonable error message when PAIRED_WITH and PARTITIONABLE are use together #4280, #4291
    ===VersionHistory:None===

commit d37c62b4ceabc489846062a90fc2e28191057927
Merge: fb338ec 1511d6e
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Wed Apr 9 15:52:17 2014 -0500

    Merge branch 'master' into V8_1-async_transfer

    Conflicts:
    	src/condor_utils/param_info.in

commit fb338ec65402ac1f6159ffc9aa1a02b7151f23cf
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Wed Apr 9 15:45:32 2014 -0500

    rename config ALLOW_SLOT_CLAIM_SWAP to ALLOW_SLOT_PAIRING #4280, #4291
    This change also updates the $EXPERIMENTAL:ASYNC_STAGING knob
    and fixes a typo in the implemtation of SLOT_TYPE_n_START, etc.
    ===VersionHistory:None===

commit 241c186b86c357904033a770ac5ec9cefc634998
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Wed Apr 9 11:43:06 2014 -0500

    Add SLOT_TYPE_n_* overrides for START, PREEMPT etc #4280 child of #4291
    ===VersionHistory:Pending===

commit 3d447e4db6535b4149e940223838091e7004554d
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Tue Apr 8 14:53:30 2014 -0500

    Remove unused variable and temporary debugging statements.

commit 8f204f27433975b4a3f30eba0873375e11df0030
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Mon Apr 7 16:10:21 2014 -0500

    Update RemoteHost and RemoteSlotID in job ad after swapping claims. #4291

commit 573dd3f75ac56328cec875f34cfc2f00861289a5
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Mon Apr 7 14:40:14 2014 -0500

    Improve paired-claim reuse on shadow exit. #4291

commit ed6e967f2e5faae1444ed1fdf930ca77f01d985c
Author: Zach Miller <zmiller@cs.wisc.edu>
Date:   Mon Apr 7 12:34:37 2014 -0500

    Log phase transition as generic event #4291

commit 844f3c0b13926fe3f6dcabbfa19ea2f651919851
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Fri Apr 4 11:31:20 2014 -0500

    After swapping claims, immediately look for a new job to run. #4291

commit e9e53d649876d04bff41c782cd74640816c3fd46
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Thu Apr 3 14:44:25 2014 -0500

    Don't crash if AddMrec() fails for paired slot. #4291

commit d081c924e9e8f9609fe69ba99d5799d2e0c30cf9
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Thu Apr 3 14:40:42 2014 -0500

    better logging of buddy claims in startd #4291

commit e3fc0e3425f9430b538ed8dc0ef797dff18a10d7
Author: Zach Miller <zmiller@cs.wisc.edu>
Date:   Thu Apr 3 13:20:07 2014 -0500

    Add chirp "phase" command.  #4291

commit 3bf21e5f2f56301e2bfebae959770646143ab2d2
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Thu Apr 3 11:21:09 2014 -0500

    Move setting of ATTR_JOB_TRANSFERRING_OUTPUT_TIME to the shadow. #4291

commit e91b5ed254fdc9e8b0754f20ac429c4e37e8b983
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Wed Apr 2 17:29:50 2014 -0500

    remove \r from end of ASYNC_STAGEOUT metaknob #4291

commit 028cfc82dddab89f51d463a4228fca84483f05ff
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Wed Apr 2 17:01:44 2014 -0500

    claim paired slot when claiming a slot, and return paired claim id and slot ad #4291

    When a pairing has been established between two slots, both of them always go into claimed
    state together.  When a SCHEDD passes _condor_SEND_PAIRED_SLOT=true in the claim request,
    then the claimid and slot ad of the paired slot is returned as part of the claiming protocol.

commit d2c8beeb932edb9ed21ea178b2eb88b594f33f85
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Tue Apr 1 17:54:12 2014 -0500

    Swap claim to paired slot when job enters output stage. #4291

    In the schedd, claim the partner of a paired slot. When a job indicates
    that it is in output phase (by setting JobTransferringOutput to True in
    the job ad), the schedd will attempt to swap the claim with the paired
    claim, allowing a new job to run on the original slot.

commit 89af156232264d1f604cabfb948524679ae00045
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Tue Apr 1 17:48:12 2014 -0500

    Make slot name easily accessible in SwapClaimsMsg. #4291

commit a2f02fa2ce327c8b68efc06af2b46db1d3b9781c
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Tue Apr 1 17:45:52 2014 -0500

    Allow HashKey to take a MyString or std::string to hash.

commit 46024b9bfe8658c32564299de4bf0252037047d9
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Tue Apr 1 17:24:53 2014 -0500

    cleanup logging for swap claims #4291

commit 5b84659434a52701007b5093911b8f31a1e5445d
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Tue Apr 1 13:58:15 2014 -0500

    add SWAP_CLAIM_AND_ACTIVATION command to dc_startd #3931

commit 491641ca865de7af34163602eb11267d76e6b64a
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Tue Apr 1 11:57:34 2014 -0500

    Add option of claiming paired slots to REQUEST_CLAIM. #3931

    The schedd can add special attribute _condor_SEND_PAIRED_SLOT to the
    request ad to indicate it wants to claim a paired slot's partner. In
    this case, the startd can respond with a new reply code, followed by the
    partner's ad and claim id. Claiming of the partner can be disabled via
    the new configuration parameter CLAIM_PAIRED_SLOT.
    This commit only implements the client side of this protocol change.

commit d1259476725f38331d1d1bc9e64db2663d4b63cb
Author: Jaime Frey <jfrey@cs.wisc.edu>
Date:   Tue Apr 1 11:46:13 2014 -0500

    Fix names of reply codes for REQUEST_CLAIM. #3931

    Comments had the values of OK and NOT_OK reversed.
    Added macro for reply indicating that leftovers are being sent.

commit d81b20c6b84c3bc0c287c6db0a2836ab8c9613a0
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Mon Mar 31 17:50:17 2014 -0500

    change config for hiding slots from *_VISIBLE=0 to *_HIDDEN=1 #4280
    also rename metaknob for async stageout to $EXPERIMENTAL.

commit afcde2db8d2c0d44f5a319863ca0bf40eb6d491d
Merge: 6aa9c60 0b06f8b
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Mon Mar 31 17:01:48 2014 -0500

    Merge branch 'master' into V8_1-async_transfer

commit 6aa9c608fa06eb672da011771f4016db3fc04404
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Thu Mar 27 10:30:40 2014 -0500

    Add SLOT_TYPE_n params to enable creation of transfer slots #4280
    New startd config in this commit:
       minimal keyword for SLOT_TYPE_n
       SLOT_TYPE_n_VISIBLE
       SLOT_TYPE_n_PAIRED_WITH
       SLOT_TYPE_n_NAME_PREFIX

commit 778ecadade8e1a61615274bad00a5d2b293bc8d0
Merge: 9a5c4cd e80f26f
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Tue Mar 25 15:01:59 2014 -0500

    Merge branch 'master' into V8_1-async_transfer

commit 9a5c4cd2c885076aeb53ee19bede7504cc63c268
Author: John (TJ) Knoeller <johnkn@cs.wisc.edu>
Date:   Thu Mar 13 16:52:04 2014 -0500

    add basic SWAP_CLAIM_AND_ACTIVATION command to the startd. a step toward async transfer #3931