refactor(kernel): explicit initialization/finalization

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(kernel/record): remove kernel extension for records, we will
implement it outside of the kernel on top of the inductive datatypes
refactor(frontends/lean/server): explicit initialization/finalization
fix(frontends/lean/class): missing explicit initialization/finalization
refactor(util): explicit initialization/finalization
fix(util/sexpr): missing explicit initialization/finalization
refactor(util/numerics): explicit initialization/finalization
perf(kernel/replace_visitor): use more expensive/precise cache

It does not use pointer equality, but structural equality