completed pileup

The pileup function compiles and does something; we actually get
separate piles out of a stream.  So far, it's completely untested,
though.