Primary key support for int and string columns

Also support for upsert for objects which have primary keys.

Missing:
- proper core support for indexing (both strings and ints)
- migration support and verification
@eni9889 yes there is support for nested objects in this pr.