Some parser fixes related to property assignment
Support splats in initialize
When expanding code, always use valid names
Refactor: moved generation of new from initialize to another file
Added private
Added protected
Simplify some code
Error if using visibility modifier to something that is not either a def or a macro call