Split up list-processing functions into files.

(Used SRFI-1-like naming.)
Implemented folds. Simplified other definitions.

Some functions are obvious catamorphisms, so they
are now implemented via $fold. Arguably, code is
more readable now as explicit looping is gone.
Implemented $multi-partition filter function.

This can come handly in various parsing where
one needs to split a list into a bunch of form
classes.

Includes an implicit else in the end.
Merge branch 'list-processing-improvements'