Adding notes on building w/different versions of bison

Melbourne 1.1.1.1 won't build with later versions of bison, and it can
be a pain to have multiple versions installed.

The steps added were tested on a fresh Debian vm.
Switch to datarootdir & use /usr/local in README

[skip ci]
Merge pull request #3150 from rubinius/1.8.7-README-updates-bison

Adding notes on building w/different versions of bison
Clean up formatting

[ci skip]
Updated Changelog.
Restrict rubinius-toolset to 2.2.x for now."
Restrict Bundler to 1.6.3 for now.
Use net/https in configure.
Updated gems_list.txt.
Bumped version to 1.3.4.
Reset release date.
Fixed allocation of CallFrame.scope in JITted code

Consider the following:

  def method_yield(arg)
    yield(6, 7)
  end

  50_000.times do
    shadow = 2
    method_yield([]) { |shadow, k| }
  end

In the { |shadow, k| } block of the below piece of code,
machine_code->total_args (2) > machine_code_->number_of_locals (1).

the JIT would allocate space for number_of_locals elements in
the CallFrame.scope->locals_ array, but write total_args elements
into the array, past the boundary of allocated memory.

this showed up as an overwrite of the subsequent CallFrame object,
corrupting its previous pointer and causing a segfault when GC
attempted to walk back through callframes.