Fix ServerSocket#accept_nonblock to return a correct Sockaddr

ServerSocket#accept_nonblock should return a Sockaddr with the remote port, not the local port.

This closes #1777
Fix BigDecimal#round behavior with NAN and INFINITY

When we call round without any argument on BigDecimal::NAN or
BigDecimal::INFINITY, a FloatDomainError should be raised.

Otherwise, the number shouldn't be altered. The problem is that JRuby
defines these constants according to BigDecimal.ZERO so when we apply
the rounding on it, it returns a float form of 0. Thus, we need to
short-circuit that and return the constant itself.
Merge pull request #1808 from robin850/bigdecimal-round

Fix BigDecimal#round behavior with NAN and INFINITY
Merge pull request #1778 from iconara/fix_1777

Fix #1777: ServerSocket#accept_nonblock to return a correct Sockaddr
Merge remote-tracking branch 'github/jruby-1_7'

Conflicts:
	core/src/main/java/org/jruby/ext/bigdecimal/RubyBigDecimal.java