created necessary classes and updated todo accordingly