Supports ARC and Download Progress Handler.

Rewrite with Objective-C 2.0 modern syntax.
Use ARC.
Add download progress handler supports.