Partibles for GHC

Here are the patches for an initial implementation of partibles in GHC. The checksums for the GHC sources are an optional precaution to ensure they are suitable for these patches. [licencing: BSD3]

01_valuate-hashed.diff: The version of GHC used here makes use of a primitive named 'seq#'. To avoid it being bumped by later patches, it is renamed 'valuate#'.

02_amid-succeeds.diff: renames the primitive 'seq' to 'amid', and provides a replacement definition of 'seq' with the traditional ordering of argument evaluation - first, then second.

03_partible-mod.diff: introduces the partible type-class and some instances with new modules and definitions.

04_output-input.diff: shows the direct use of partibles in selected I/O-centric definitions.

Have fun, and remember: if it breaks, you can always make a mosaic from the pieces...