Pull over Jeff's original patch. Update it per George's comments: since opal_using_threads is always false if thread-multiple hasn't been enabled, there is no reason to include checks for it in that condition. So restore the #if statements in opal/threads/mutex.h to regain the remaining missing performance. Also, restore the thread debugging code as there is no reason to exclude it as it only builds in debug environments
btl/tcp: fix hang when using multiple threads

There was a hang in the tcp btl that caused a hold-and-wait scenario
when processing libevent events. The problem was due to one event holding
the event lock while waiting for the endpoint lock while another thread
was holding the endpoint lock while waiting for the event lock. The fix
is simple: drop the endpoint lock before trying to delete a libevent
event. The fix was tested with osu_latency_mt.
Shorten the timeout period when we attempt to create a connection. Add an MCA parameter to allow it to be tuned by users and admins, but default it to 0.1 seconds. Need verification by others to ensure this is adequate.
Add the processor architecture to the topology signature

Conflicts:
	opal/mca/hwloc/base/hwloc_base_util.c
Restore full topology comparison to support inventory monitoring

Conflicts:
	opal/mca/hwloc/base/hwloc_base_dt.c
Automatically detect hetero node situations

Cherry-pick plus cleanup of:

open-mpi@bb529eb
open-mpi@9b2f8cd
open-mpi@18d9fdf
Port across the LSF affinity support changes, based on the following master commits:

open-mpi@3f9d9ae
open-mpi@960ef34
open-mpi@f92ccaf
open-mpi@c4002a8
open-mpi@c4fd6d1
opal_progress: fix sched_yield check

master commit open-mpi/ompi@d0da29351f9cf070abd4b6ee8409780ff02bb4b6
Remove merge conflict cruft
Add missing header
Set a more appropriate default value of 2.0 seconds
Merge pull request #110 from hjelmn/topic/yield_fix

opal_progress: fix sched_yield check
Implement Gille's suggested warning patch and fix for select returning 0. I think I'd like to keep the timeout to avoid long delays waiting for things to fail, and to support faster switchover to alternative interfaces.
Merge pull request #112 from rhc54/cmr/hetero-nodes

Add automatic detection of hetero nodes
Merge pull request #111 from rhc54/cmr/lsf-integration

Tighten LSF integration by adding support for affinity settings
Begin roll of release candidate 2 so people can begin testing it
help messages: fix obvious typos

(cherry picked from commit 4551cab6f1bc51e4def6fdbc3cc983292958345b)
Remove extraneous , from oshmem/mca/sshmem/verbs/configure.m4
Merge pull request #113 from jsquyres/pr/v1.8-help-message-typo-fixes

help messages: fix obvious typos
On to rc3 when it is ready to roll