Separating classes from the model and those used to organize the model
Emptying __init__.py files
Modeling function calls as a call tree and keeping track of call depth