Fix handling of Time offsets at DST boundaries.

Partly fixes #948
Fix handling of :dst Symbol in Time.new

Completely fixes #948
[IR] Improved performance of IR-based interpreter (upto 23%)

* Introduced a few classes of operations and used them to
  split the monolithic interpreter dispatch switch into
  a switch on operation class with different methods handling
  the operations belonging to a class. This has a few different
  benefits:
  - cuts down the size of the interpreter loop body
  - enables more specialized code for each class of operations
    without generic interpretation overhead across the board
  - lets us manually inline more operations into the interpreter
    loop switch opening the opportunity for more JVM inlining

* Also added some new operation types for a few of the specialized
  call instructions. This also enables us to inline their execution
  in the interpreter loop body.

* Results on a few benchmarks below:
+-----------+---------------------------------+
|           |  OLD       NEW          | AST   |
+-----------+---------------------------------+
| fib_rec   |  6.22 -->  6.05 (0.97x) |  2.70 |
| red_black | 43.14 --> 33.05 (0.77x) | 25.17 |
| richards  |  9.67 -->  8.37 (0.87x) |  5.36 |
| meteor    | 23.00 --> 20.47 (0.89x) | 14.21 |
| neural    | 22.58 --> 20.09 (0.89x) |  9.95 |
| tictactoe | 56.98 --> 52.34 (0.92x) | 38.22 |
+-----------+---------------------------------+

* So, significant speedup on most programs.

* This is a first pass at this approach -- to be experimented with,
  refined, and cleaned up more.
change into to use IO object encoding when read yaml file.
added prefix path to src dist archives
have a path prefix for the zip archive as well [skip ci]
use jruby-1.7.5.dev as basedir for archives [skip ci]
Merged PR#988 with some mild style tweaks
Enable IO.select to tell if an incoming IO-like has buffered data.

To fix JRUBY-6874, we chose to introduce a new ReadBuffered
interface that SSLSocket could implement to indicate if it had
already read ahead and had data available. However, ReadBuffered
had to be introduced into JRuby proper so that JRuby code unaware
of SSLSocket could see it. This meant that SSLSocket would depend
on an interface only available in JRuby 1.7.5 and higher, breaking
backward compatibility.

In order to avoid this problem, I introduced a new class
SSLSocket2 that extends SSLSocket and implements ReadBuffered. If
the ReadBuffered interface is available, SSL socket construction
will return an SSLSocket2 and the fix works. If ReadBuffered is
not available, the instances will be SSLSocket and the fix is not
applicable. Because of the lazy nature of JVM class linking, this
works because SSLSocket2 is never referenced or instantiated when
we know it won't link.

This is a bit of a hack...but it's not too bad.
Additional doco for SSLSocket.
Add a test for JRUBY-6874.
Fix headers in new files.
Install RubyGems 2.1 and test default gems for json, rake, rdoc.

This is a prerelease version of RubyGems 2.1, but it should be
released on Monday. We will include the full version in JRuby
1.7.5.
Merge branch 'default_gems'
use jruby.bash as jruby when packing dist archives #990  [skip ci]
Commit binstubs for default gems rake and rdoc.
Revert all changes related to SSLSocket read + select (JRUBY-6874)
BigDecimal#* should return BigDecimal in 1.9 mode. #992
Fixup infinitySign TODO's
BigDecimal#+ should return BigDecimal in 1.9 mode. #992