Rethink the query builder.

This replaces the advanced array logic crap of the conditionals with functions that represent the special things you want to do.

Now, without using the functions, it's only possible to do `x = y` or `x IN (y, z, ...)`.

These are the functions you can use...

 * `Database::where_and`
 * `Database::where_or`
 * `Database::where_not`
 * `Database::where_gt` (More than)
 * `Database::where_gte` (More than or equal to)
 * `Database::where_lt` (Less than)
 * `Database::where_lte` (Less than or equal to)
 * `Database::where_equals` (Equals)

Internally, this uses an object to communicate the special information.