roffit: make URL conversion case insensitive and handle fragments