public void ManipulateParameters()
        {
            var q = new Query();

            q.AddParameter("testX", "someVal");
            q.AddParameter("testX", "someVal2");
            q.AddParameter("testXY", "someVal3");

            var vals = q.GetValues("testX");
            Assert.AreEqual(2, vals.Count());
            Assert.AreEqual("someVal", vals.First());
            Assert.AreEqual("someVal2", vals.Skip(1).First());
            Assert.AreEqual("someVal3", q.GetSingleValue("testXY"));

            q.RemoveParameter("testXY");
            Assert.IsNull(q.GetSingleValue("testXY"));
            Assert.AreEqual(2, q.GetValues("testX").Count());
        }
 internal static Query Load (String resource, IEnumerable<Tuple<String, String>> parameters)
 {
     Query result = new Query();
     result.ResourceType = resource;
     foreach (var p in parameters)
     {
         result.AddParameter(p.Item1, p.Item2);
     };
     return result;
 }