Previously I just used gensyms for the argument names. That breaks
reloading the system, though: the classes get redefined with new slot
names, but the old instances continue to linger, only they don't work
properly any more.
Instead, write a proper lambda-list parser which allows slot names to be
specified independently of the user-facing argument names.
Of course, this now changes the way the `list-exports' machinery parses
`definst' forms.