refactor dotemacs to modular