fix interface for annotation writing to PDF files

also, add a test for this.
Merge pull request #248 from hwhw/fix_kr1052

fix interface for annotation writing to PDF files
switch to 8bit buffers for crengine and djvu backend
fix kindle toolchain selection
Merge pull request #249 from koreader/chrox-master

switch to 8bit buffers for crengine and djvu backend
fix RGB16 getG() method

there was a typo that led to the return of wrong numbers when
asking a ColorRGB16 value for its (8bit) green value (getG()).
This led to very wrong results when blending colors.
add a test for converting RGB16 into its components

test upscaling 5/6bit RGB16 components to 8bit values
Merge pull request #250 from hwhw/fix_kr1040

fix RGB16 color components 8bit value calculation
update sdcv to support xml formated dictionary data
Merge pull request #251 from koreader/chrox-master

update sdcv to support xml formated dictionary data
fix no k2pdfopt lib built on Android
since wrap-mupdf now doesn't depend on k2pdfopt lib it should be
specified explicitly.
Merge pull request #252 from koreader/chrox-master

fix no k2pdfopt lib built on Android
fix serious memory leak of when rendering mupdf page
Merge pull request #253 from koreader/chrox-master

fix serious memory leak of when rendering mupdf page
add suppport for HTML and Wikimedia dictionary data
Merge pull request #254 from koreader/chrox-master

add suppport for HTML and Wikimedia dictionary data
add method to create a viewport: rectangular subset

New method "viewport()" allows to define a rectangular part of a
blitbuffer and create a new blitbuffer object, offering access
to the memory for our blitbuffer, but starting coordinates within
that rectangular area from (0,0).

Note that the new viewport blitbuffer does not allocate new memory.
The callee must ensure that the memory stays in place.
Merge pull request #255 from hwhw/hal

add method to create a viewport: rectangular subset