Insert doesn't return lastrowid for Postgresql
Postgres/psycopg2 does not provide a lastrowid db-api method -- you need to use RETURNING with postgres. This is handled automatically for you when you use the models APIs, but **not** when you are using the low-level query builder (e.g. `Table`).
Minimal test case:
```
test = Table('test',('id','value'),primary_key='id')
test.bind(db)

lastRowId = test.insert({test.value: 10}).execute()
```

Actual:
lastRowId is None

Expected:
lastRowId contains generated primary key


In Postgresql implementation, for receiving inserted id RETURNING clause is used. The following code works correctly:
`lastRowId = test.insert({test.value: 10}).returning(test.id).execute()`
however in the current implementation equivalent to this is used:
`lastRowId = test.insert({test.value: 10}).returning('id').execute()`

Postrgres returns something like this: `Column(name='?column?', type_code=25)`
which then is wrapped and looks like this `{'?column?': 'id'}`
then `last_insert_id` is trying to access `cursor[0][0]` which raises an error so None is returned


