Update hash_matching to check cost of additional method call

Since lookup with frozen string vs custom class is 47% what if the
custom class has a frozen string as key that is obtained with a
method call? (Turns out that method call breaks the iterative
optimization in ruby, and compensating with map step is mroe costly.