Compiler: Added syntax for marking a class as constant. The class annotation syntax @constant; now causes the class to have the PROGRAM_CONSTANT flag set. This flag indicates that objects created from it may be regarded as constant/immutable and shareable (ie they do not contain any relevant state other than that passed to them at creation time). The compiler and/or runtime may replace such objects with other objects that they compare `== with at any time.