* refr: Took out main primary and secondary loops and data processing.
* feat: Tidied the code up.
* feat: Saving models and results now works in a type safe way.
* fix: There was error in the saving function.
* chore: Took out some remaining comments.
* fix: Fixed the previous data checking process.
* feat: Fixed model selection method. I will continue the inference after we merged.
Co-authored-by: Daniel Szemerey <szemereydaniel@gmail.com>