Fixes #4482: Java: New methods and some fixes.

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

r31287 [[BR]]
Avoid use Status member in Request.

r31289 [[BR]]
Java: Comm.set/getInfo

r31293 [[BR]]
Java: remove useless native datatype initialization

r31296 [[BR]]
Java: neighborhood collective communications

r31299 [[BR]]
New Java method in Comm: iDup

r31300 [[BR]]
Java - Info, Datatype: it is recommended to use dup() instead of clone()
Fixes #4551: Java: copy on arrays only the necessary

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

r31301 [[BR]]
Java: create an MCA parameter: ompi_mpi_java_eager

r31303 [[BR]]
Java: move buffer methods from Comm.c to MPI.c

r31391 [[BR]]
Java: improve access to Java arrays.

r31452 [[BR]]
Java - neighborhood collective communication: get buffers according topology information 

r31454 [[BR]]
Java: initialize free list to only 2 buffers

r31464 [[BR]]
README.JAVA.txt:  explain the 'mca' parameter 'mpi_java_eager'
Fixes #4676: Move r31888, r31889 to v1.8 branch (Fix argument checks for [i]neighbor_alltoall{v|w} )

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

r31888 [[BR]]
Fix argument checks for [i]neighbor_alltoall{v|w}

This fixes a bug introduced in :
 - r31815 (trunk) 
 - r31853 (v1.8 branch)

cmr=v1.8.2:reviewer=bosilca

r31889 [[BR]]
remove all message output from ompi/communicator/comm_helpers.c

Thanks George for pointing out.

cmr=v1.8.2:reviewer=bosilca:ticket=4676
Fixes #4689: Move r31924 to v1.8 branch (Fixes MEMCHECKER vs MPI_IN_PLACE in)

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

r31924 [[BR]]
Fixes MEMCHECKER vs MPI_IN_PLACE in *alltoall*

cmr=v1.8.2:reviewer=bosilca
Fixes #4699: Move r31959 to v1.8 branch (Correct the bind-in-place algorithm to)

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

r31959 [[BR]]
Correct the bind-in-place algorithm to better handle comm_spawn. If the location identified by the mapper is already occupied by procs from another job, then we need to shift either right or left until we find an unoccupied location where we can be bound. If nothing is available, then check for the overload flag (and bind us in the original location if provided), or see if this was the default binding policy instead of one specified by the user - if so, then just don't bind this process.

cmr=v1.8.2:reviewer=rhc
Fixes #4708: Move r31982 to v1.8 branch (If we detect an error)

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

r31982 [[BR]]
If we detect an error on a request that has been already released
at the MPI level, we should call abort on MPI_COMM_WORLD.

Fixes ticket #1943.
cmr=v1.8.2:reviewer=jsquyres
Fixes #4710: Move r31984 to v1.8 branch (MXM: fix mxm cleanup, should)

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

r31984 [[BR]]
MXM: fix mxm cleanup, should be called for any compat API

fixe by miked, reviewed by yossi

cmr=v1.8.2:reviewer=ompi-rm1.8
Fixes #4712: Java: update javadoc's install locations

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

r31914 [[BR]]
Java: update javadoc's install locations
Fixes #4702: Move r31967 to v1.8 branch (Make the cpus-per-proc equivalent a)

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

r31967 [[BR]]
Make the cpus-per-proc equivalent a little more intuitive:

* allow users to specify just a modifier for map-by instead of requiring that they also specify a policy. Thus, we now accept --map-by :pe=3 as indicating that we should use the default mapping policy, but bind 3 cpus/proc.

* if users specify a pe's/proc but no policy, default to --map-by NUMA to ensure we have access to multiple cpus for the request. This won't guarantee we have access to enough to meet the request, but gives us a chance. In addition, we know that binding a proc to multiple cpus will work best if those cpus are all in the same NUMA, so this provides some degree of optimized behavior.

Per a request from Jeff, define "oversubscribe" for binding as a synonym for the "overload" modifier.

cmr=v1.8.2:reviewer=rhc


r31988 [[BR]]
Per patch from Tetsuya, correct the cpus-per-proc logic so we correctly detect when the user is attempting to bind too low for that option

Refs #4702