Fix some inconsistencies with implementing container/heap
Take a path parameter for `Load()` and `Save()`
Add some basic tests for the tasks type