use URLConnection for MMS because it's better

Among other things, the code is actually maintained and it can handle things like HTTP redirects. Also you don't need to set instance-wide proxy settings to pipe a single connection.

I also added in more verbose logging to follow the code path better for future debug logs.
What is the case where getInputStream() throws IOException but getResponseCode() doesn't?