Add current (rough) state of aggregate library with documentation

It's quite rough at the moment and needs more tests, error checking
and documentation tweaks but it will do for now - it's fairly functional
as the examples show.

For now, also add the generated Scribble documentation until I figure
out GitHub pages, or whatever, to host it separately.