Eliminated CameraActivity.mHolder because it was unnecessary.
This is a small cleanup before a big refactoring.
Isolated CameraThread from CameraActivity, 
encapsulating all camera hardware accessing codes in CameraThread.
Use separate method for UI thread parts and camera thread parts in
CameraThread.

Added focus control methods to support a shutter button, 
that is a combination of CAMERA key and FOCUS key in a single hardware
button.
Some minor updates to Camera codes.
In CameraThread, introduced camera state to manage what operation is
valid and what is
invalid in a consistent way.

In CameraActivity added support for shutter (FOCUS+CAMERA) key and D-PAD
CENTER to take a picture.
Added "shutter button" on the release note.
slightly loosen the coupling of CameraThread and CameraActivity.
many code cleanup.
Changed the control flows of CameraThread.

Changed the behaviour of CameraThread.unlockFocus() 
when
CameraThread.shoot()
has
been
issued
but
the actual shooting is not yet started.

Added/updated several comments.
Improved puzzle board recognition, especially under some bad conditions
e.g. a shadow crosses on the puzzle.

This is the updated originally planned for 0.80 release.
implementation is still rough, though.
Merge branch 'release' into capture
Merge branch 'ui' into release
Merge branch 'capture' into release
In preparation for release 0.82.
Updated the release note for 0.82.
Merge branch 'master' into release