adding macro.defmethod that preforms method macro expansion