Add parameters to query factory methods

Adds additional parameters to factory methods for convenience:

- `select(table, columns)`
- `insert(table, values)`
- `update(table, values)`
- `delete(table)`

This makes the public interface more consistent with the Select builder interface, which was already accepting `$table, $columns` but not exposing the parameters via the factory.
(Repeating my comment from before, now that this is finalized.) This was the only change I was unsure of, but it seemed to be untested and didn't match up with the rest of the expectations in the class; `BaseQuery::setTable(<string>$table)` for instance. Injecting a `Table` object here didn't seem logical, as the `Table` class is not exposed anywhere else publicly.