attribute defaults are now functions so that they can create new versions for each instance
construct objects correctly
add in predicates for constructor/destructor
no more lazy init of instance vale
these ops are implemented now
variable assignment
parse classes, attributes, methods, destructors, constructors and all that good stuff (oh and tests too)