1.Code Refine;
2.Removed the performSelector:onThread:withObject:waitUntilDone:modes: method, since sometime it won’t be executed.
Make sure the progress won’t exceed the duration.
Added a method to get the type based on the "Content-Type"