switched to task oriented design
several changes to accomodate to task based design