fix compilation against readline-6.3

This is a squashed cherry-pick of the following commits:

  10f60e4e2e477ae3fd6c26c31d4753cbd412d84b
  664813677963792e2ad36ef9370107dc41c7f27b
  d2a8e28597df946842f44d6e0d2cbfe98863b877

They fix a problem where ruby cannot compile against
readline-6.3, because upstream dropped support for
"Function" in favor of rl_hook_func_t. This version of
readline is present, e.g., on Debian unstable.
Merge pull request #15 from github/peff/readline

fix compilation against readline-6.3
string.c: clear env self in symbol proc

* string.c (sym_to_proc), proc.c (rb_block_clear_env_self): clear
  caller's self which is useless, so that it can get collected.
  [Fixes GH-592]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Conflicts:
	ChangeLog
fix broken test