Support path expansion in jar entries.
GH-1551 - Fixing: Fixnum#to_s seems to generate strings immune to #[]=
Actually use Java7ClassValue when using Java 7+.
GH-1633 - BigDecimal operations should throws TypeError when the first argument is nil.
GH-1633 - Fixing issue created by the last commit.

BigDecimal operation were throwing a TypeError when the first argument is another BigDecimal.
Fixes #1638 "Regexp Interrrupted" Typo
GH-1551 - Adding regression specs.
Merge branch 'GH-1551' into jruby-1_7
Merge pull request #1645 from ratnikov/fix-jar-expansion

Fix jar entry path expansion (https://github.com/jruby/jruby/issues/321 issue)
GH-1590 - Hash#hash should not return the hash size when keys & values are the same.
Automerge from a web-merged PR from github
Stop using the deprecated verson of sun.misc.Unsafe#getLong(Object, int) and use the recommended getLong(Object, long).  The deprecated version is not present on Dalvik (Android) and throws Exception(Java::JavaLang::NoSuchMethodError): sun.misc.Unsafe.getLong
BasicSocket#shutdown should accept strings or symbols

Fixes #1579
Changing RubyHash#hash to use HashMap.hashCode to calculate the hash value.
RubyHash#hash fixing colisions when a hash contains itself.

Thanks @atambo for the help.
RubyHash#hash reverting the latest changes when it's a recursive call.