## Utilities - __Design #1480__ Introduce a Directory class which handles properly and in one place the different behaviour that might be expected. The former ways to create/remove/check existence of directories still exist but have been moved into Advanced namespace; the proper way now should be to use the new class. - Design #1477 - Support #1181: For output directories, add the possibility to query the user to ask whether a former directory should be overwritten or not. - Support #1482: Introduce a utility function to generate a random string (for tests). - Support #1479: Introduce a GracefulExit exception which should be handled in the main by an EXIT_SUCCESS return code. - Support #1474: InputData: add a constexpr test to check whether a given item is present or not. - Bug #1475: Improve the error message when unbalanced braces in the input file. ## Core - __Feature #1476__: MoReFEMData: introduce a new template parameter which specifies the type of program (model or test). - Support #1478: MoReFEMData: use helper functions to make the constructor clearer. ## Models - Feature #1259 - #1303: The non linear membrane operator is now fully validated with and without a pretension. ## External tools - Support #1484: Doxygen: Fix the warnings of advanced and basic Doxyfiles, and add them to CI. - Support #1483: Update Doxyfiles to Doxygen 1.8.16 (and fix the new warnings in the code). ## Ongoing tickets - Feature #1443: Introduce a two step parallelism run to make better use of memory (and it's a step to restart as well). Mesh may be reloaded completely from pre-partitioned data.