adding the ReflectiveObject class
reimplementing StaticClass in terms of ReflectiveObject
adding missing tests