simplify DequeueThread: only one variable for the state.

thread is started in HwBuffer_Start, stopped in HwBuffer_Stop, and joined
in HwBuffer_join since HwBuffer_FreeBuffers may unblock the thread.
comments
not needed when using hwbuf
HwBuffer_AllocateBuffers: do like android do:

Before: dequeue all buffers, then cancel them all.
Now: dequeue all buffers, cancel only the last min_undequeued one.
cosmetic
use HwBuffer_GetPic in DecodeVideo
fix warning
iomx_hwbuffer: return -errno in case of error
DequeueThread: check error, EBUSY is not critical