**Functionality**
- **overall**:
- all functions have been aligned to the `lower_case_with_undersocres` format.
- all classes have been aligned to the `CapitalizedWords` format.
- **dataloading module**:
- EEGDataset can preload the entire dataset.
- Fixed bugs (get_eeg_partition_number returns float values with some input args)
- **models module**:
- custom layers were moved in a new models.layer submodule
- encoders were moved in a new models.encoders submodule
- layer constraints now include MaxNorm, MinMaxNorm, UnitNorm, with axis
selection like in Keras.
- added Conv1d layer with norm constraint and causal padding.
- added FBCNet (encoder + full model) and ATCNet (full model only).
- **ssl module**:
- The module was divided in ssl.base and ssl.contrastive.
- Two new submodules, ssl.predictive and ssl.generative, with their relative
pretraining algorithms, were added.
- SSLBase class now includes two methods used to perform args check for fit and
test methods.
- EarlyStopping now accepts a custom device to use during best weights recording.
- fine_tune function can also accepts lists of input, labels, augmenters, and
label encoders. This might make easier to work with multi-branch or multi-head
models.
- **utils module**:
- added zscore scaler.
**Documentation**
* sphinx automodapi was removed from the dependencies and switched directly to sphinx
autosummary. This solved several issues and improves overall compatibility
(sphinx automodapi will be maintained only for the developers internal projects)
* All files generated by autosummary were removed and the api folder is included in
the gitignore
* Documentation notebooks have been fixed to the new naming format
**Maintenance**
* fixed typos on model module unittest.
* Added new tests for novel functionalities.