* feat: Implement more database methods & add mod and version routes
* feat: Implement deleting mods/versions & implement categories
* feat: Implement routes for categories, game versions & loaders
* feat: Reorganize API routes in a (hopefully) usable way
* refactor: improve error handling
* fix: specify bind address instead of port
* fix: remove temporary testing file
* fix(errors): change error names to snake_case
* refactor(errors): split indexing error types, remove unused errors
* feat: add env variable checking at program start
This just checks whether the enviroment variables exist and can
parse to the given type and gives a warning if they can't. This
should prevent cases where the program fails at runtime due to
checking an environment variable that doesn't exist.
* feat(schema): add basic structs for schema
* feat(schema): implement base62 id parsing
* docs(schema): add documentation for schema structs
fix(schema): prevent integer overflow in base62 decoding
* refactor(schema): move ids into submodules, reexport from ids mod
* feat(schema): add random generation of base62 ids
style: run rustfmt