In designing this table it seems like the biggest decision is which fields to define in the table schema, and which to relegate to the JSON payload. The baseline in my thinking is that we would put *everything* in the payload, so the table would just be:

```
CREATE TABLE events
( id         serial    PRIMARY KEY
, payload  json
 );
```

We should have a good reason to move anything out of `payload` and into the `events` schema itself. What are the reasons for `ctime`, `pid1`, `pid2`, and `action` to be in the schema instead of the payload?