feat(plook): use cached lookups

To speed up the lookup process, a LRU cache has been
implemented. For now, we're only caching the slugs of each
package.
fix(plook): actually set cache entries
test(plook): test cache hit on .lookup()