Tweak code style
Simplify use of resolveSlice

Elide caller-side check for the code readability.
Use UnionExp in ctfeCat
Consider singletons in UnionExp::copy()
Merge pull request #4225 from 9rnsr/refactor_ctfe

Refactoring CTFE interpreter code