LUCENE-5673: MMapDirectory: Work around a "bug" in the JDK that throws a confusing OutOfMemoryError wrapped inside IOException if the FileChannel  mapping failed because of lack of virtual address space. The IOException is rethrown with more useful information about the problem, omitting the incorrect OutOfMemoryError

git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1595213 13f79535-47bb-0310-9956-ffa450edef68
Simplify for Java 7, which has support for new IOException(message, cause)

git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1595223 13f79535-47bb-0310-9956-ffa450edef68