[IR] ReceiveKeywordArgInstr made more robust against var renames

* ReceiveKeywordArgInstr was dumbly using target variable name
  (instead of an explicit argName operand) to lookup keyword arg
  from the keyword args hash. Obviously, this code breaks in
  scopes that get optimized to remove all traces of local variables.

* This patch now handles the following kw-arg test case correctly.

---------
  def f(str: "foo", num: 4)
    [str, num]
  end

  p f1(str: "bar")
---------