Clean up of classes inside Task package
More cleanup work. Leaving the packaging branch open as it's likely to see more use.