クリップボードを完全に同期 (#161)

* クリップボードが変更された時 (WM_DRAWCLIPBOARD) に実行する
  `*change-clipboard-hook*` を追加
* 完全に同期と中途半端に同期は従来からある `*sync-kill-ring-with-clipboard*` 変数で制御
  - `t` なら中途半端に同期
  - `:always` なら完全に同期
  - `nil` なら同期しない
* 中途半端に同期の場合の処理（従来の処理）
  - xyzzy が deactivate したときに kill-ring の内容の方が新しければ
    クリップボードにコピー
  - xyzzy で yank したときにクリップボードの内容の方が新しければ
    kill-ring にコピー
  - WM_DRAWCLIPBOARD メッセージと copy-region-as-kill で
    `*clipboard-newer-than-kill-ring-p*` と `*kill-ring-newer-than-clipboard-p*` を制御
* 完全に同期を選んだ場合の処理
  - copy-region-as-kill で kill-ring からクリップボードに即コピー
  - `*change-clipboard-hook*` でクリップボードから kill-ring に追加
クリップボード同期関連のリファレンスを追加 (#161)

  - `*sync-kill-ring-with-clipboard*`
  - `*change-clipboard-hook*`
Merge branch 'feature/#161-sync-kill-ring-with-clipboard-always' into develop
クリップボードチェーン切れ対策 (#390)

- Vista 以降の場合は AddClipboardFormatListener を利用する。
  この新しい API を使えばそもそもチェーン切れなどが発生しない

- XP 以前の場合は以下のようにする。
  - 定期的 (3 秒間隔) で GetClipboardSequenceNumber を呼び出し
    最後に WM_DRAWCLIPBOARD を受け取った時の番号と違ったら
    チェーンが切れたと判断する
  - チェーン再接続時の ChangeClipboardChain で一旦削除する処理は
    いるのかよくわからなかったけどとりあえず入れておく
  - クリップボードチェーンが乱れると WM_DRAWCLIPBOARD が複数
    送られて来る可能性もあるのでその対策も入れる
Merge branch 'feature/#390-clipboard-chain-watchdog' into develop