Undefine SimpleDelegator#open due to private method interference

Including `::Kernel.dup` brings across the #open method into
SimpleDelegator with undesirable consequences.

e.g.

```Ruby
class A
  def open
  end
end

SimpleDelegator.new(A.new).open
# => nil

SimpleDelegator.new(A.new).send :open
# ArgumentError: wrong number of arguments (0 for 1..3)

/cc @nobu this shows the real problem