Handle 4.4.4 image URI's properly

What android API level do we need for this code to work correctly? I think we may not be able to build android 2.3 with this in it.

NOTE: You should be able to optionally use/call out to a class or inclusion based on API level but we may need to split things out a bit.