re-factor and split Express.dart into more modular pieces