rotate images regarding exif information

This should fix #973 and #331.

I used the Exif class from `com.android.gallery3d.data` from [Android 4.2.2r1](http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.2.2_r1/com/android/gallery3d/data/Exif.java?av=f). The newer Android versions are using a more complex class to get the exif parameters, but we just need the orientation, so I chose the one from 4.2...

I don't know if its okay to put the google code just like that in the source directory?
would it make more sense to have BitmapUtil contain a `createScaledBitmap(Context context, MasterSecret masterSecret, Uri uri, int maxWidth, int maxHeight)` to support PartAuthority Uris instead of asking for three streams now from the caller.

Seems like in our Bitmap APIs we may as well just support the various types of inputs then have it generate as many streams as it needs to get the work done.