class Module

def alias_method_chain(target, feature, &block)

Standard in rails... See official documentation[http://api.rubyonrails.org/classes/ActiveSupport/CoreExtensions/Module.html]
def alias_method_chain(target, feature, &block)
  Backports.alias_method_chain(self, target, feature, &block)
end unless method_defined? :alias_method_chain

def instance_method_with_additional_info(name)

def instance_method_with_additional_info(name)
  unbound = instance_method_without_additional_info(name)
  unbound.name = name.to_s
  unbound.owner = ancestors.find{|mod| mod.instance_methods(false).include? unbound.name}
  unbound
end

def module_exec(*arg, &block)

def module_exec(*arg, &block)
  instance_exec(*arg, &block)
end

def singleton_class?

def singleton_class?
  # Hacky...
  inspect.start_with? '#<Class:#'
end