[Discussion] Callback interface/architechture
PR #1544 opened the discussion that aspects of the callback interface needs to be rethink. This issue will keep track of future discussion. From the PR, these points were made:


Trainer callback arguments: Currently there are 3 arguments in trainer (callback, early_stopping_callback and checkpoint_callback). It should be discussed what the user can pass to the different arguments. Mostly it seems that people are in favor of only allowing bool arguments for early_stopping_callback and checkpoint_callback, which will add a default version of the respective callback. Anything else should be passed on callback


Callback order: As pointed out early stopping needs to be called before model checkpoint, because modelcheckpoint save early stopping callback stats. This implies that some form of dependency tree should be implemented to callback interface