Server side terminal emulation

In version 0.0.x, each client runs its own terminal emulator (term.js from tty.js). Raw terminal data is sent to client, so there are some inconsistencies.

From version 0.1.0, the terminal emulation code is moved to server-side (in a module called "headless-terminal"). While this means more computing in the server side, but it means a lot less download on the client side.

A lot of code in the client side was refactored, and support for different terminal dimension was added.