Adds static properties and methods to classes

Classes can now be defined with static properties and or methods which
are available at the class level and not the instance level.

Statics can set access levels; public, private or protected; much like
non statics. Inheritance can also be demonstrated much like non statics
with child classes automatically having methods of their ancestors.