Lots of refactoring into separate files, also use BigInt primary key type