- Cleaned up namespace by putting everything inside TypeSmart module.
- Discovered a bug about double-length unicode characters and plugged
  it with temporary hackery. (inserting the char and then moving the
  cursor back by one character).
Had forgotten to add libcursor to the document. Fixed now.