My last commit message? Yeah I lied. I was annoyed that I couldn't make this dumb thing work, so I gritted my teeth and finished the implementation of Iterator for ConcatResultIter.
Kind of finish ConcatParser. There's one not-so-nice aspect, which is that it requires the second parameter to implement Clone. In theory we only need a reference to a Parser in ConcatResultIter to be able to call parse, but I couldn't make the borrow checker agree with me.
Add deriving(Clone) to AltParser and ConcatParser
Add some more manual tests, clean up the printing logic