.on_conflict() update parameter does not adapt dicts (Postgres)
As a temporary workaround, try using the actual field objects instead of the field-names as strings, e.g.:

```python
record = {
    Session.someid: 'textid',
    Session.tstp: datetime.datetime(2018, 12, 12),
    Session.data: {},
}
``` Fixed by f59ee6d
When a record includes dictionary data for a JSONB column in postgres, the data is correctly adapted in insert or update statements, but fails to be adapted as part of the .on_conflict() clause's update parameter.

The following (simplified)

    record = {'someid': 'textid', 'tstp': datetime(2018, 12, 12, 15, 30, 30), 'somecolumn': 'text', 'data': {}}
    (SomeTable.insert(record)
     .on_conflict('update', conflict_target=[s.someid, s.tstp], update=record))

sends the following statement

    ('INSERT INTO "someschema"."sometable" ("someid", "tstp", "somecolumn", "data") VALUES 
        (%s, %s, %s, %s) 
    ON CONFLICT ("someid", "tstp") 
    DO UPDATE SET 
        "someid" = %s, "tstp" = %s, "somecolumn" = %s, "data" = %s 
    RETURNING "session"."id"'
    , ['textid', 
       '2018-12-12 15:30:30', 
       'text', 
       <psycopg2._json.Json object at 0x11215bd30>,
       'textid', 
       '2018-12-12 15:30:30', 
       'text', 
       {}])

resulting in a `peewee.ProgrammingError: can't adapt type 'dict'`.

I am using peewee 3.8.0. Is this intended behaviour? ~~As a workaround I'm using a try/except clause in combination with an insert statement (the more common operation), but this of course means two queries to the database in case of conflict. Are there any more efficient workarounds, e.g. manually pre-converting the dict into a psycopg2 json object?~~

Edit: Using `from psycopg2.extras import Json`, the dict can successfully be pre-converted and the .on_conflict() clause executes successfully. 
    