Make the newly-added 'on-error' optional in do-forms-from-info

This is the simplest possible change which arbitrarily deems
that errors should be reported as errors in LOAD.
Stop COMMUTATIVE-ARG-SWAP from producing undumpable structures.

If the form produces an error such undumpable structures will prevent
the error message from being dumped into the FASL.

COMMUTATIVE-ARG-SWAP manages to do so by wrapping the non-constant
variable in (truly-the type), to facilitate type propagation.

Get rid of COMMUTATIVE-ARG-SWAP completely, introduce a new known
attribute, COMMUTATIVE, and let IR1-OPTIMIZE-COMBINATION to perform
argument swapping before applying any transforms and without
discarding any type derivation already performed on the combination.

Fixes lp#1276282.