Ziggy confuses methods of the same name in different classes

Here is code to repro.

```rb
require 'ziggy'
require 'rails'

Rails.cache = ActiveSupport::Cache::MemoryStore.new

def logger
  Logger.new(STDOUT)
end

class A
  include Ziggy
  cached :foo

  def foo
    "A#foo"
  end
end

class B
  include Ziggy
  cached :foo

  def foo
    "B#foo"
  end
end

p A.new.foo # says "A#foo"
p B.new.foo # also says "A#foo"
```

This pull request fixes it by adding class name to `invocation_key`.