Refactored and added some methods.
+ `order_by()` now you can use multiple fields for sorting (use a list like `['field1', 'field2 desc']`)
+ `group_by()` now you can use multiple fields for grouping (use a list like `['field1', 'field2']`)
+ `where()` and `having()` now you can omit the operator `=` or `IN`, usage `where([['id', 3]])` and `where([['id', [10, 11, 12]]])`
+ method `pluck(key_index, column_index)` returns a list of tuples of needed columns