feat(core): re-add the cache and debug APIs
feat(core): remove unnecessary recursion from get()
feat(core): simplify flatten-map()
feat(core): resolve-aliases should be recursive
feat(perf): speed up resolving aliases with the internal cache