Collapse all functions into extlookup.rb
fixup! Collapse all functions into extlookup.rb
Move caching to singleton with invalidation logic