sync camerahal to upstream
this is a squash of 2 commits

Free QualcommCameraHardware instance when closing camera

The LINK_mm_camera_destroy is being called in QualcommCameraHardware
destructor. If we do not free the QualcommCameraHardware from
camera_device_close the camera may not be deinitialized and drain
the battery when not using camera.

This is especially visible when Skype is installed - which opens the
camera during startup to probe the camera and obtains its parameters
even when the user is not using camera in skype.

Fix crash during camera close

Move LINK_mm_camera_destroy call to ~MMCameraDL, call mMMCameraDLRef.clear() from
QualcommCameraHardware destructor to make the behaviour consistent
with CAF;s kk_2.7_rb1.29 release