refactor: move list.foldl and list.foldr to std.functional.

Move the documented location for foldl and foldr from list.lua
to functional.lua, modernizing specs as we go.  Keep the old
access points, with a deprecation warning.
* lib/std/list.lua (foldl, foldr): Move from here...
* lib/std/base.lua (foldl, foldr): ...to here.
* lib/std/functional.lua (reduce): Move from here...
* lib/std/base.lua (reduce): ...to here, where foldl and foldr
can use it.
* specs/list_spec.yaml (foldl, foldr): Copy from here...
* specs/functional_spec.yaml (foldl, foldr): ...to here.
* specs/base_spec.yaml (before): Don't depend on the location of
implementation of nop.
* NEWS: Update.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>