Compiler: Added syntax for marking a class as constant.
The class annotation syntax
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.