UI for rotating images

Because mobile phones have a bad tendency to upload rotated photos, often with any headers to indicate that they are sideways, this adds a UI for viewing and rotating photos.
We should add an assert here that old_photo.width != old_photo.height, otherwise we will get a false success.