Classlib: Fix 2 issues regarding Rest and patterns

1. It's reasonable to write `Rest({ 5.rand })` or `Rest(Pseries(1, 1, inf).asStream)`, but this wasn't supported before. Now you can.
1a. A possible refinement would be to create the Rest with `^super.new(dur.asStream)` -- this is probably a good idea, but I'm not sure, so I'm keeping it out of this pull request for now.

2. A Pcollect's function may return a Rest, so it should call processRest on that result. (At first, I thought this might also be needed for Pselect and Preject, but these patterns only suppress output values, not alter them. Rests should already have been 'process'ed by the input stream.)