WyRL: Performance optimisation for probe().
Whilst invesigating #400, I noticed that there were some unnecessary
loops in the probe() function.  Essentially for cases where we didn't
need to further check a pattern, since it was guaranteed to be its
declared type.  This is now fixed, though unclear whether it's made any
useful performance improvement.