Started moving to the buffered IO

Added invalid parameters tests for the lexer_next_token().
Added basic lexer_context interaction and tests.

The lexing part is commented out for now.
Documentation changes + minor test file sematics fixes
Implemented null construction sentinel

Also commented out permafailing lexer tests.
Bufferized internal init tests
Implemented fixed buffer init
Refill tests
Refill implementation
Refill return code check
Shift tests
Added status messages to tests
Moved to Qt Creator IDE
Moved again to ST2, lol
UTF-16 surrogate fixes

Major:
1. UTF-16 surrogate fixes:
   * Proper buffer limiting
   * Surrogate-aware context_refill()
2. Implemented context_shift()
3. Implemented lol-garbage-collecting allocation in tests.
4. Fixed the test_fetch_shift() due to surrogates.
5. Fixed some warnings & valgrind complaints.
6. Some changes in the renamed test_common.* that I've forgotten about
   and stupid Git cannot see them.

Minor:
1. Fixed tabs and spaces in Makefile
2. Removed Sublime stuff from VCS
3. Some renamings.
Enabled all tests. Fixed failing assert
Removed dead code
Reimplemented simple cases: empty strings, some comments
Implemented a new invariant for the context->current pointer
[failing assertions] Transferred multiline comment support
Surrogate tests + more assertions
Implemented lookahead. Tweaked tests.