Fixes #3760: Move r29132 to v1.7 branch (various usNIC updates/fixes)

---svn-pre-commit-ignore-below---

r29132 [[BR]]
add Reese Faucette to the AUTHORS file

Reese actually authored several usnic BTL changes prior to this commit,
but they were committed on his behalf by Jeff or me.

cmr=v1.7.3:reviewer=jsquyres

r29133 [[BR]]
usnic: Basket of performance changes including:

    - round segment buffer allocation to cache-line
    - split some routines into an inline fast section and a called
      slower section
    - introduce receive fastpath in component_progress that:
        o returns immediately if there is a packet available on priority
          queue and fastpath is enabled
        o disables fastpath for 1 time after use to provide fairness to
          other processing
        o defers receive buffer posting
        o defers bookeeping for receive until next call
          to usnic_component_progress

Authored-by: Reese Faucette <rfaucett@cisco.com>

Should be included in usnic v1.7.3 roll-up CMR (refs #3760)

r29134 [[BR]]
usnic: squash warnings from perf improvements

Should be included in usnic v1.7.3 roll-up CMR (refs #3760)

r29135 [[BR]]
usnic: "bookeeping" --> "bookkeeping"

Should be included in usnic v1.7.3 roll-up CMR (refs #3760)

r29136 [[BR]]
new bookkeeping code should return value indicating whether packet is good or not.

Authored-by: Reese Faucette <rfaucett@cisco.com>

Should be included in usnic v1.7.3 roll-up CMR (refs #3760)

r29137 [[BR]]
usnic: revamp convertor handling.

The fix for the HPL SEGV was incorrect because it assumed the
prepare_src() routine was always allowed to return "bytes processed"
less than the requested "bytes to send".  It turns out this is only true
if the convertor is what limits the size, we are not allowed to limit
the data sent for our own reasons, else we break login in the upper
layers.

This means we need to learn the number of bytes out of the size
requested the convertor will give us, no matter how big the size is.
Unfortunately, this is a destructive test, and (currently) the only way to
learn that number is to actually have the convertor copy the data out into
buffers.

This change implements this, copying the entire data out into a chain of
send segments which are attached to the large send fragment.  Now we can
always return the proper size value to the PML.

Fixes Cisco bug CSCuj08024

Authored-by: Reese Faucette <rfaucett@cisco.com>

Should be included in usnic v1.7.3 roll-up CMR (refs #3760)

r29138 [[BR]]
usnic: v1.6<->trunk unification, trunk side

The Cisco-maintained v1.6 port of the usnic BTL has diverged from the
upstream trunk and v1.7 branches.  This commit adjusts the trunk to more
closely match the v1.6 branch to simplify future merging and
cherry-picking.

The usnic MCA parameters also need work on this side.

Should be included in usnic v1.7.3 roll-up CMR (refs #3760)

r29140 [[BR]]
Ensure that btl_usnic_compat.h is in the tarball.

r29147 [[BR]]
No need for this header file.

r29148 [[BR]]
Delineate OMPI_FREE_LIST_*_MT separately.
    
The FREE_LIST_*_MT stuff was introduced on the SVN trunk in r28722
(2013-07-04), but so far, has not been merged into the v1.7 branch yet
(2013-09-06).  So put it in its own #ifdef, rather than defining it
based on OMPI_MAJOR_VERSION/OMPI_MINOR_VERSION.