Refactor into seperate server modules