Fix shift from arguments on cached routes.

The previous code shifts from $args, which removes the
options from the condition call for subsequent route calls.

The following code fixes this through two simple alterations:
1.) Refer to the anon hash ref instead of shifting it
2.) Grab the rule list from $args with splice