Random fixes

Feel free to mix and match
So I had been thinking about this for a while. Most users will not be familiar with namedtuples and `replace` sounds like something that modifies the object in place. Would `copy_with` or `copy_replacing` be acceptable to you? It makes it explicit that we're copying the URI with different parameters (alternatively copying the URI while replacing parameters). Finally, I'd really like a complete docstring for this method describing what it does, what it should return and what parameters it expects you to pass in.