continuing refactor
rounding up the refactoring
improvements