add defgeneric for pattern matching multimethods
remove autosaves