stable version with history/arrow/dashed line/rounded line
minor optimization
shadow & keys im

- add: "shadow" that can enable in-place characters inserting
- add: Draw.backspace
- fix: Caret.getCaret bug
- fix: caret moving will stop at left/upper border
- changed: disable spell check in textarea
- changed: better Keys with test function support for Keys.SOME.which
- changed: make History.states private
better documentation & UI

- a minor commit
fix scroll bug

- fix: Shadow and UI.t now scroll at same position.
spellcheck bug & setCaret focus-taking bug fix

- fix: now textareas' spellcheck is really turned off.
- fix: setCaret focus on elem necessarily. Now fixed.
fix Shadow scroll bug & Caret new feature

- fix: Xanadu's scrollLeft incoherence
- add: Caret.set(... type) now support type = 1 for non-focus-absorbing.
Drag & Highlight init

- change: more general object handling for Caret
- change: Shadow now use UI.x (#shadow)
- add: Drag utilities, use META+SHIFT+direction to drag
       put highlight into UI.x (share with Shadow)
bug fix & redo

- add: META-SHIFT-Z to redo
- fix: now release one functional key is enough to give up polygone
- change: jQuery element interface for all sub-packages
- change: now History.record() only after keyUp, which ignore long-pressed
          input & Drag.move
make

- add: use make to generate compact code
- fix: some javascript semi-colon issue