Merge Task and replace Node

This eliminates the Node abstraction (replacing it with Task) and allows for future task types (other than MethodList).