Short for operate on system and an alias for the operate function.
Operate does three things:
1. It creates an instance of operation-class using any keyword parameters
as initargs.
2. It finds the asdf-system specified by system (possibly loading
it from disk).
3. It then calls traverse with the operation and system as arguments
The traverse operation is wrapped in with-compilation-unit and error
handling code. If a version argument is supplied, then operate also
ensures that the system found satisfies it using the version-satisfies
method.