Replace top-level .gitignore with .gitignore_global, and add .hgignore_global

The rationale for this name switch is as follows:

0. These two files will be automatically kept up-to-date with
   svn:ignore properties in the tree via a cron script.  Meaning: if a
   developer makes changes to svn:ignore properties, those changes
   will automatically be reflected in .gitignore_global /
   .hgignore_global within a fixed time period (at the moment,
   nightly).

1. Developers who make pure clones of git/hg OMPI repos can copy the
   relevant .*ignore_global file to .*ignore.  This gives them a good
   starting point for a fully-populated ignore file.  However, since
   the upstream _global file may change over time, developers will
   likely want to keep them in sync with their local .*ignore file.
   Here's two possibilities:

   1a. Maintain a single .*ignore file and manually merge in changes
       from the _global file upstream.

   1b. Maintain their local ignores in a .*ignore_local file, and
       periodically "cat .*ignore_global .*ignore_local > *.ignore"
       (e.g., whenever the upstream _global file changes).

2. Developers who make svn+clone checkouts can do similar things as
   listed in 1, with the added feature that they cannot make the
   mistake of committing their locally-modified .*ignore file back to
   SVN (presumably containing references to files that do not exist in
   SVN), since the .*ignore file is not in SVN.

Point #2 is probably the    stronger of these two reasons -- prevent
mistakes of developers accidentally committing locally-modified
.*ignore files back to SVN.
Add script that re-generates .gitignore_global and .hgignore_global.

Also update the crontab file to show that it's running nightly at 1am.
Add "mpiteam" user (for git mirror script)
MPI_Type_indexed.3in: fix array_of_displacements type

This man page contains the prototype and descriptions for both
MPI_TYPE_INDEXED and MPI_TYPE_CREATE_HINDEXED.  Bastian Beischer
noticed that the type of the array_of_displacements argument in the
MPI_TYPE_CREATE_HINDEXED was wrong.

Also, a minor update to MPI_Type_hindexed.3in: indicate that the C
type is MPI_Aint and the Fortran type is INTEGER (which is why this
function was deprecated and then deleted by the MPI Forum!).

cmr=v1.8.1:reviewer=dgoodell
OSHMEM: fix compilation error with pathscale

Thanks to  Ake Sandgren for patch

reviewed by Roman/Miked

cmr=v1.8.1:reviewer=ompi-rm1.8
OSHMEM: align with OSHMEM SPEC v1.0

- add some missing APIs
- change signature od shmem_finalize to comply with SGI spec

fixed by Roman, reviewed by Igor/Miked

Refs #4520
OSHMEM: revert r31412, it did not pass jenkins
Fix bugs in intercomm creation and comm split.

This commit addresses bugs discovered by ggouaillardet.

 - Fix hang when creating an intercommunicator

 - Fix memory leak

 - Fix coverity warning cid70288

 - Fix false coverity warning cid1196589

Fixes #4507
Fixes #4522

cmr=v1.8.1:reviewer=jsquyres
Silence warnings identified by the clang static analyzer in the
communicator code.

Many of the warnings were false warnings. These were silenced by
adding the appropriate asserts. Other warnings identified some
potential issues in error paths that should now be resolved.

cmr=v1.8.1:reviewer=jsquyres
coll/ml: fix issues identified by the clang static analyser and fix
a segmentation fault in the reduce cleanup

Some of the changes address false warnings produced by scan-build. I
added asserts and changed some malloc calls to calloc to silence these
warnings.

The was one issue in cleanup for reduce since the component_functions
member is changed by the allreduce call. There may be other issues
with how this code works but releasing the allocated
component_functions after setting up the static functions addresses
the primary issue (SIGSEGV).

cmr=v1.8.1:reviewer=manjugv
coll/ml: clean out apparently stale code

The file coll_ml_ibarrier.c wasn't included in coll/ml's Makefile.am
and the setup code from coll_ml_hier_algorithms_ibarrier.c was not
being called. It looks like this code is stale and has long since been
replaced by the code in coll_ml_barrier.c

Once all these little CMRs are approved I may make it into one roll-up
CMR to make it easier on the RM.

cmr=v1.8.1:reviewer=manjugv
bcol/basesmuma: fix broken allgather algorithm

The algorithm was failing ibm/collective/allgather and iallgather. I
cleaned up the code to eliminate duplicate code paths and tracked the
issue down to an error in the way extra nodes in the knomial exchange
are handled. The new code is more compact and has been tested with up
to 64 ranks with the ibm test suite.

cmr=v1.8.1:reviewer=manjugv
More efficient way of waiting for asynchronous copy to complete.
Ensure that the session directory fields of orte_process_info have been initialized prior to cleaning up those directories as part of the initialization process that deals with stale session directory trees.

Fixes #4534

cmr=v1.8.1:reviewer=jsquyres
Add some further protections after discussion with Jeff

Refs #4536
Correctly set a non-zero exit status when mpirun is terminated by signal

Fixes #4537

cmr=v1.8.1:reviewer=jsquyres
Per comments from Jeff makes some changes to the communicator changes.

Changed:

 - Use ompi_mpi_group_null instead of MPI_GROUP_NULL.

 - Asserts don't always quiet the clang static analyser. Change them to
   ifs to really quite the warnings.

cmr=v1.8.1:ticket=#4527:reviewer=jsquyres
proc_info.c: uncomment C99 struct member initialization usage

The C99 usage to initialize via struct member names was already there,
but commented out.  This commit doesn't fix any known problem; it
simply uncomments the C99 code, because it's safer/better.
Improve support for Cray's CLE 5

cmr=v1.8.1
Fixes per review by jsquyres.  Piggy back on btl_base_verbose rather than using my own special MCA var.