> with the exception of testing x-www-form-urlencoded - that's dead code and not used anywhere

If it's a dead code, can it be removed? Or at least add a comment saying it's a dead code not used.

> RE routes like "/compare/:commit/:commit2" not working - I just wanted to verify you wanted me to change it to mimic the JS implementation. The JS implementation wouldn't work on routes like "/modify:type" (no slash before the colon) but perhaps that is not an issue. Currently, the Android version behaves exactly like the iOS version, but I can change it to mimic the JS version no problem.

That's a valid question. @ritch @raymondfeng, which implementation is correct? The iOS or the JS one? Please let @brackeen know what is the correct parameter-replacement algorithm.