camera: Add options to better control video preview size

 * usePreferredPreviewSizeForEffects is needed to fix camcorder effect on
   some MSM8660 devices.
 * Add ignorePreferredPreviewSizeForVideo to use the best size reported
   by the driver instead of the preferred-preview-size-for-video value,
   which may report something really awful.

Change-Id: I216502fe032a89f69e1aea11bc50c51634d40991
camera: Add ZSL support for Samsung/Qualcomm cameras

 * Preview management for Samsung/Qualcomm cameras

Change-Id: Ib36bd21c9a76b45bced3eee2f25acc35b5d82b30
Always use recording dimensions for preview

Some devices, like apexq, require the preview dimensions to be the same
as the recording dimensions.

Change-Id: I307fb4c0d4df37abe0a045a69693f480022fc597