Renamed MPI_MUTEX_TAG to MPIX_MUTEX_TAG

Fixed misuse of MPI_ namespace in the mutex library.

Reviewer: none
use _LAYOUT_COMPATIBLE macros for MPI pair-types

This says that layout compatibility matching should be used instead of
checking for the exact type (e.g., "mpich_struct_mpi_short_int").

Contributed by Jed Brown:
http://lists.mpich.org/pipermail/discuss/2013-January/000226.html

No reviewer.
guard mpi.h clang annotation types

This should reduce the amount of work for the compiler, and reduce
the chances of an unintelligent compiler/linker dumping a lot of
these symbols into an executable/library.

Suggested by Jed Brown:
http://lists.mpich.org/pipermail/discuss/2013-January/000230.html

No reviewer.
fix automake-1.13+ recursive var warning

Starting with automake 1.13, the `silent-rules` option no longer implies
the `-Wno-portability-recursive` option.  (The relevant automake commit
that changed this behavior is 14141f258, in case we ever need to chase
this down again.)

No reviewer.
update hydra .gitignore for automake-1.13+
update openpa .gitignore for automake-1.13+

This needs to be upstreamed to openpa at some point.  Separated from
MPICH commits in order to facilitate `git-subtree` usage.

No reviewer.
tt#1776: fix platforms missing LLONG_MAX

Provide an LLONG_MAX (and similar) definition in mpiimpl.h if the
current platform/environment does not provide one.  Extremely useful for
overflow checking, especially for the "large count" functionality.

Reviewed-by: buntinas
Removed unnecessary goto statements

These gotos had no effect -- they went to the same place we get to by ending
the conditional block.

Reviewer: none
tt#1763: IN_PLACE checking for MPI_Reduce_local

MPI-3.0, page 189 expressly forbids MPI_IN_PLACE as an argument to
MPI_Reduce_local.

Check suggested by Jeff Hammond.  Fixes ticket #1763.

Reviewed-by: dinan