improvements to task api and frontend