* build(backend): pyjwt dependency
* feat(backend): middleware + logic to generate and decode tokens
* feat(backend): decorator to ensure logged in user
* fix(backend): adjust auth check decorator and jwt lifetime
* feat(backend): ensure that signature expiration is handled in middleware
* test(backend): base coverage for token generation
* feat(backend): file deletion flow
* ci: set change-check flags when no changes detected
* feat(backend): refactor settings to be a singleton object
* refactor(backend): cleaning delete flow cruft
* test(backend): add coverage for deletion + adapt coverage to only rely on endpoints
* docs: type responses for deletions