Fixes to make erorrs more visible.

This includes adding missing 'message' to exceptions and checking the status return value of the upload method.
Added a little more documentation.
Merge pull request #887 from Wikia/BetterHTTPErrorRecovery

Fixes to make erorrs more visible.