routing: improve Pathmatcher `|` operator