Make `\Request::get` more performant.

Previously request get ran ALL searches regardless of whether a result was found. Now it only runs the ones required to find the value.
we'd still need the last `if ($result === $this) { return $default; }` as the previous conditionals will fall through if successful. I'd rather it stay to be more verbose.