Move constants which are not dependent on each other to actual constants
and not constant getter functions backed by static storage
Make cleanup semantics part of the ExceptionCleanup object and not based
on a variable passed by reference