improvements to task controller, more user logic