refactor: made the code base more modular.