Add new models and interfaces for use with npgsql

Default Relational interfaces do not work with npgsql. Foreign keys map
to column with NOT NULL property, which is wrong. TKey should not be
used for id at all, as it is int and int? for very most relational dbs