I think a good solution would be to use functions with most of their parameters having defaults (kind of documentation), and then provide properties in the scope via
apply
, so that anyone can modify the defaults inside the
apply
right after all trivial settings are set