AUTOINCREMENT on sqlite doesn't work properly
That's how sqlite auto increment work if it is not a primary key: https://www.sqlite.org/autoinc.html
 Except I would assume that 'id' is a primary key.
 I agree, but that depends on how the table was created. 

Whatever the case I think the problem here is on the sqlite side, not peewee.
 The table was created by peewee based on the model:

```
peewee will automatically add an auto-incrementing integer primary key field named id
```

http://docs.peewee-orm.com/en/latest/peewee/models.html
 That's how sqlite work:

```
sqlite> create table t (id integer primary key, f);
sqlite> insert into t (f) values (100);
sqlite> insert into t (f) values (200);
sqlite> insert into t (f) values (300);
sqlite> delete from t where f=300;
sqlite> insert into t (f) values (400);
sqlite> select * from t;
1|100
2|200
3|400
sqlite>
```
 The peewee documentation explicitly states it uses an auto-incrementing primary key for the row id.

But from the sqlite documentation I understand that it depends where the AUTOINCREMENT keyword is used.
Either way I would expect the same behaviour in sqlite and postgres when peewee creates these tables.
 Ok, I found a specific class in peewee's sqlite implementation that should provide this:
https://github.com/coleifer/peewee/blob/master/playhouse/sqlite_ext.py#L92
So the id should be overridden to use this class in stead.
 As was noted, see the:

http://docs.peewee-orm.com/en/latest/peewee/playhouse.html#PrimaryKeyAutoIncrementField

It seems that AUTOINCREMENT on sqlite primary keys doesn't actually increment properly.

ie.:

```
entries with id 1 and 2
2 is removed
new is added -> id = 2
----
expected -> id = 3
```

In postgres it uses the proper SERIAL increment as expected.
