std: barrel of monkey(patche)s!

Close #56.
Segregate monkey patching into module functions that have to
be called explicitly.
* lib/std.lua.in: Don't clobber any core metatables, or change
any global symbols on load.
* specs/io_spec.lua (monkey_patch): Specify behaviour of
std.io.monkey_patch function.
* lib/std/io.lua (monkey_patch): Add readlines and writelines
methods to core file objects.
(processFiles): Remove.
* specs/math_spec.lua (monkey_patch): Specify behaviour of
std.math.monkey_patch function.
* lib/std/math.lua (monkey_patch): Overwrite core math.floor.
* specs/string_spec.lua (monkey_patch): Specify behaviour of
std.string.monkey_patch function.
* lib/std/string.lua (monkey_patch): Overwrite core assert and
tostring functions, and add methods and metamethods to core
string objects.
(escapePattern, escapeShell, ordinalSuffix): Remove.
* specs/table_spec.lua (monkey_patch): Specify behaviour of
std.table.monkey_patch function.
* lib/std/table.lua (monkey_patch): Overwrite core table.sort.
* specs/table_spec.lua (barrel, monkey_patch): Specify behaviour
of std.barrel and std.monkey_patch functions.
* lib/std.lua.in (monkey_patch): New function for patching core
symbols and metatables by calling submodule `monkey_patch`
functions.
(barrel): New function for scribbling all over the given
namespace, as well as installing all std monkey_patches.
* specs/debug_spec.yaml, specs/functional_spec.yaml,
specs/io_spec.yaml, specs/math_spec.yaml, specs/package_spec.yaml,
specs/std_spec.yaml, specs/string_spec.yaml, specs/table_spec.yaml,
specs/tree_spec.yaml: Update to reflect removal of default
monkey patching.

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