# File lib/facet/module/wrap_method.rb, line 16
  def wrap_method( sym, &blk )
    raise ArgumentError, "method does not exist" unless method_defined?( sym )
    old = instance_method(sym)
    undef_method(sym);
    define_method(sym) { |*args| blk.call(old.bind(self), *args) }
  end