Add parentheses to each `where` condition.

I was having trouble doing things like `Thing.where('(Id != NULL) OR (Id = NULL)').where("Id = '123456789012345678'")`, which result in malformed queries.
@antico5 : the join method is adding ') AND ('
~~~ ruby
.where("condition") => "WHERE (condition)"
.where("condition1").where(condition2) =>  "WHERE (condition1) AND (condition2)"
.where("condition1 OR condition2")=> "WHERE (condition1 or condition2)"
.where("condition1 OR condition2").where("condition3") => "WHERE (condition1 or condition2) AND (condition3)"
~~~
if not this last code return
~~~ ruby
"WHERE condition1 or condition2 AND condition3"
~~~
This is not the same. right now if you want to avoid this you should have to do
~~~ ruby
.where("(condition1 OR condition2)").where("condition3") => "WHERE (condition1 or condition2) AND condition3"
~~~
But this is forcing the user to know something that the gem should resolve.
Let me know what you think.

+1