rebased ruby 2.1 patches against ruby_2_1 head