title: alias_method and class_methods don't mix?
body: <p>I've been trying to tinker with a global Cache module, but I can't figure out why this isn't working.</p>
  
  <p>Does anyone have any suggestions?</p>
  
  <p>This is the error:</p>
  
  <pre><code>NameError: undefined method `get' for module `Cache'
      from (irb):21:in `alias_method'
  </code></pre>
  
  <p>... generated by this code:</p>
  
  <pre><code>module Cache
    def self.get
      puts "original"
    end
  end
  
  module Cache
    def self.get_modified
      puts "New get"
    end
  end
  
  def peek_a_boo
    Cache.module_eval do
      # make :get_not_modified
      alias_method :get_not_modified, :get
      alias_method :get, :get_modified
    end
  
    Cache.get
  
    Cache.module_eval do
      alias_method :get, :get_not_modified
    end
  end
  
  # test first round
  peek_a_boo
  
  # test second round
  peek_a_boo
  </code></pre>