Add assert
Add assert
Add test case for maxChiSymbolLen
Reduce maxChiSymbolLen to 39 to avoid overflow

The current preedit buffer size is MAX_PHONE_SEQ_LEN. libchewing needs
to auto commit preedit buffer before reaching MAX_PHONE_SEQ_LEN.
However, the original auto commit threshold, MAX_PHONE_SEQ_LEN - 1, is
not okay because in worst case, the preedit buffer might increase
MAX_PHRASE_LEN at once. In this case, libchewing crashes due to buffer
overflow.

In order to fix the issue, we reduce the maximum value of
maxChiSymbolLen to MAX_PHONE_SEQ_LEN - MAX_PHRASE_LEN = 39, so in worst
case, libchewing still have enough preedit buffer.

Fixed #52
Add test case for phoneSeq API
Add test case for selecting 4-bytes UTF8
Fix indent
Fix NoSymbolBetween()

Closed #46
Rewrite macro STATIC_ASSERT to avoid recent GCC warnings

Reference:
  http://www.pixelbeat.org/programming/gcc/static_assert.html
Add USE_VALGRIND option in cmake
Update test message
Change default maxChiSymbolLen to 39
Fix misplace word
Fix cmake check for integer related headers
Add new API chewing_set_logger
Add unit test for logger
Add log level
Add document for chewing_set_logger
Add cmake/version.texi.in to EXTRA_DIST
Add address sanitizer check in travis-ci