Added convenience methods to `Uri`

1. added test case for `Uri` to check a query parameter without value followed by fragment
2. changed interpretation of a query parameter without value
3. added convenience methods to `Uri` to manipulate parameters in query string more easily
Yes, that is good. Sorry for the misunderstanding.


On Sat, Jun 28, 2014 at 2:02 PM, André Rouél <notifications@github.com>
wrote:

> In core/src/main/scala/org/http4s/Uri.scala:
>
> > @@ -66,6 +68,68 @@ case class Uri(
> >    override lazy val toString =
> >      renderUri(this)
> >
> > +  /**
> > +   * Creates maybe a new `Uri` with the specified parameters. The entire
>
> I wrote 'maybe' to underline that in case the manipulation of query string
> results to an equal Uri we can save the overhead to create a new instance
> and return this directly. Does it make sense?
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/http4s/http4s/pull/29/files#r14325316>.
>