A thin wrapper around NSTask that provides block callbacks for task completion, error, and output.