core: overlong UTF-8 encoding and surrogates (U+D800-DFFF) are invalid.
Merge pull request #120 from l/translation_ja

core: update Japanese translations
doc: update Japanese auto-generated files
core: add option weechat.color.status_nicklist_count (closes #109, closes #110)
core: add option "-mask" in command /unset (closes #112)
core: fix evaluation of expressions with regex condition (closes #63)

The regex itself is not evaluated any more (so parentheses are kept).

Before the fix:
>> abcd =~ (?-i)^abc
== [0]
>> (abcd) =~ \(abcd\)
== [0]

After the fix:
>> abcd =~ (?-i)^abc
== [1]
>> (abcd) =~ \(abcd\)
== [1]
python: fix read of return value for callbacks returning an integer in Python 2.x (closes #125)
irc: display locally away status changes in private buffers (in addition to channels) (closes #117)
aspell: rename variable "utf8_char_int" to "code_point"
core: hide message timestamp in bare display if timestamp is disabled in buffer (closes #129)
script: fix display of curl errors
core: add Curl options for versions 7.29.0 to 7.37.0
core: display a warning on startup if $TERM is not screen(-256color) under screen/tmux

The same warning is displayed with command "/debug term".
core: update German translations
doc: update German auto-generated files
core: send signal key_combo_xxx even for unknown combos
core: move main() function into Curses GUI
core: do not exit WeeChat in weechat_end() (let the caller do that)

This is needed for automated tests, to exit with return code of tests.
core: move some detections from src/CMakeLists.txt to root CMakeLists.txt
tests: add unit tests using CppUTest

The tests can be run only via CMake:

  1. build with tests: cmake .. -DENABLE_TESTS=ON
  2. make
  3. ctest  (or ctest -V for verbose output)