Make qprev and qpush return the previous applied patch and the next pushable patch. It seems this was the original intent but the implementation is buggy with regards to guards.