previously it was either a number like string (in case env or config.ini was used) or a number (the fallback value)
we now parseInt the value -> if any value is NaN (e.g. because it was incorrectly set) it will try with the next, before it uses the fallback value
the strange looking `parseInt(String(process.env.TRILIUM_SESSION_COOKIEMAXAGE))` is required to make TypeScript happy, other variants of trying to get the value into a string were not good enough for typescript :-)
The `String(process.env.TRILIUM_SESSION_COOKIEMAXAGE)` will now either return a number like value or 'undefined' (as string), which parseInt parses into NaN, which is falsy.
allows users to control how long their session will be live, before it expires and they are forced to login again
defaults to 1 day ("24 * 60 * 60 * 1000") as previously set in sessionParser
original idea of using config-sample.ini for default values
is not backwards compatible unfortunately
fallback values taken from config-sample.ini and directly from other code in this codebase, where these values were set