bug 922006 - [camera] Support camera.sensorAngle

* `previewWidth` and `previewHeight` now indicates actual raw preview size, no matter what `sensorAngle` is.
* similarly, `screenWidth` and `screenHeight` now indicates actual screen size, no matter what `sensorAngle` is.
* the **preview dimension in direction of screen** (preview dimension rotated by sensorAngle) is now called `previewBoxWidth` and `previewBoxHeight`.
* also since we calculate rotated size by function rather than switch width and height now, I think we can now calculate aspect ratio by more common way, ``Width / Height``, rather than ``Height / width``.
* Calculate rotated dimension (i.e. bonding box dimension) by trigonometric functions to support every rotation angles.
* Move transform center of viewfinder to `50% 50%` to make countering the position easier.