refactored route handlers into Classes for feature expansion