Add support for non-integer User class primary key

Added a little introspection to set the `user_id` column type of the transaction table to that of the user class.