[ new , buggy ] recursively drawing subpaintings

This involves a fair bit of randomly generated values which pushed me
to move away from System.Random to the nicer MonadRandom interface.

Inserting a grid in subpaintings makes them bigger then they were!
This leads to paintings not fitting in a square anymore and, as a
consequence, out of bounds error when writing the painting into a
png.