Perform syntax coloring on background thread

シンタックスカラーリングをバックグラウンドで処理する機構が完成したので、マージしたいと思います。
一応ざっと動作確認していただけると幸いです。問題があればマージ前に修正します。

裏に回したことによる主な効果は下の辺りだと考えています：

- カラーリングシートでカラーリング中でもレインボーカーソルが出ずに他の書類が閲覧・編集できるようになった
- シートからカラーリングをキャンセルしたときにすぐ反応するように改めた
- シートからカラーリングをキャンセルしたときに書類のシンタックス設定が「なし」に変更されるようになっていた仕様をしないように改めた
    - キャンセルがしやすくなったので、次のカラーリングを恐れて「なし」に変更する必要はなくなったと判断

これにより 「#63 サイズが大きなファイルを読み込むと、読み込み中のまま操作できなくなる」の問題はほぼ解決したと思います。

なお、カラーリングのパフォーマンスそのものに関しては以前と同等のはずです。