isDefEq
We can compile Lean with these changes, but 3 tests are still broken. This cache is used to address a performance issue reported at https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/deterministic.20timeout.20with.20structures/near/288180087
ExprDefEq.lean
LevelDefEq.lean
We use the export/extern idiom to define `isLevelDefEqAux`, and then define the `isDefEq` user facing functions at `Meta/Basic.lean`.