Convert the task storage over to an interchangeable key-value store

This won't be able to be completed until after pcron lands, but is the foundation for storing tasks in their own key-value store and not in ijod.