refactored from Task/AbstractTask/TaskGraphExecutor -> TaskWorker/TaskResult/TaskGenerator
reused FakeCodeLocation
reused FakeCallLocation
organized imports
cleaned up NativeCallTask
refactored CallHashing -> NativeCallHasher
added CachingTask
refactored NativeFunction to use CachingTask
removed cleaning .smooth dir from SmoothApp
renamed HashedDbWithResults -> HashedDbWithTasks
renamed package .object -> .db
redesigned CodeLocation to contain only line number
redesigned CodeLocation so first line in a file has number 1