refactor - one file per class