Letterbox images when they don't match aspect ratio.

We probably also need to handle orientation changes and flip the
width/height in those cases. I *believe* mobile browsers handle that
consistently. This should work better for the initial orientation,
although the black bars can be rather large. Ideally I think we could
try to get the browser to get us a resolution closer in aspect ratio
to what we want, although I haven't had much success with constraints
as of yet.

We could also consider doing some sort of cropping and/or zooming, we
just need to make sure the preview matches up with what we're doing
behind the scenes.