bench: split apart individual benchmarks
tests: add basic tests

closes #5
simplify a lot using fast-url-parser