Error with Same Field, Multiple Values, Criteria and QueryBuilder

I just posted another quick patch for this, but after reviewing some of the tests, I realized I needed to change it slightly.  

The bug appeared when using same field for 2 different expression values within Criteria, then adding to QueryBuilder.

This makes sure the parameters are unique, avoiding the issue.

Example of issue:  
Criteria of Field1 = Value1 OR (Field1 = Value2 AND field2 = true) passed to QueryBuilder
In this case, the parameter :Field1 was duplicated, throwing an error on evaluation of DQL.