fix($http): fix response headers with an empty value

Empty response header values are legal (http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html).
Return an empty string instead of null, which is returned when the header does not exist.

Closes #7779
Since this change uses `hasOwnProperty`, add a test for header values in the object prototype, like `ToString` or `Constructor`, too.