Function: substitute

Substitute NEW for OLD in SEQ.
This is a non-destructive function; it makes a copy of SEQ if necessary
to avoid corrupting the original SEQ.

Keywords supported: :test :test-not :key :count :start :end :from-end

(fn NEW OLD SEQ [KEYWORD VALUE]...)