Transactions shouldn't rollback on error

See #3

One thing that concerns me is that the test current segfaults on my machine. However, the following snippet does not:

```javascript
conn.query('BEGIN TRANSACTION');
conn.query('Not a valid sql statement', function(err, res) {
    //t.notEqual(null, err);
    conn.query('INSERT INTO transaction_test (a) VALUES (1)', function(err, res) {
        //t.equal(null, err);
        conn.query('COMMIT');
    });
});
```

Something seems to be working quite differently in `node-any-db-transaction` from the naive implementation via direct statements.

I'm not sure whether that's a bad build of my sqlite3 extension, etc, but perhaps you can check if the same happens on your machine?

I've got to leave it at this for today.