* split Screenshot upload & management into separate endpoints
* move shared functions to manager classes
* cleanup javascript
* move test for config screenshot min size to cfg class
* the great unfuckening of user and displayName
* `login` is purely used as login with AUTH_MODE_SELF
* `email` may now also be used to log in (if the system knows it)
* `username` is purely used for display around the site, and lookups from web context
* both must exist because of external logins
a) that may be not unique
b) you may not want to share with the rest of the world
* todo: implement rename ( because of b) )
* create php classes, each mirroring a js object
* each frontend class implements __toString and json_serialize and as such can be directly used by the template
* also allows for sane object creation before js screams in agony
* usage TBD