[Add] add DownloadListener to DownloadTask
[Add] add message to DownloadException
[Add] add get() and set() of the listener  to DownloadTask
[Add] remove DownloadListener form some methods
[Add]   case HttpURLConnection.HTTP_PARTIAL: