macroexpansion implemented; set! and def implemented