move functionality to todo and user classes and establish association