Add "fuzzy" url matching when replaying

Some URLs are constructed using the current time, making them unique from execution to execution.

We could solve this by overwriting the date functions, making sure they return the same result in each execution. However, this is problematic if we want to reorder the sequence of interrupts - in that case we would like the time to be sequential in the new order.

This commit introduces fuzzy url matching, used when replaying network data and scheduling interrupts. The fuzzy url matching will try to match URLs that are equal in their construction but contains small differences in the values of their query parameters (e.g. time related values).