issue0007: Cancel task without stop goroutine
1.When downloader error, call cancel to end task; when user end task, use stop

2.check task status when start new downloader, if vaild, exit downloader goroutine

Change-Id: I122aa7b8e873a119009b59f719c56b4b105ad609
Merge branch 'iceyer/issue0007-Cancel-task-without-stop-goroutine' into develop