Initial commit

Porting all the code from Qiita and extending the tests.
Can reduce the logic here:

```python
if not many:
    sql_args = [sql_args]

for args in sql_args:
    self._check_sql_args(args)
    self.queues[queue].append((sql, args))
```