Added Route class to separate stuff more cleanly