Mosh Windows/Linux 対応をまじめに

herumiさんとid:mjt さんのアドバイスを受け、今まで Linux でビルドできれば良いということで、書き散らしてきたコードを少しずつ整理。
パス名、コンソールのエンコーディングなど OS 毎に違うものを出来るだけ、1箇所にまとめる方針で。
getopt_long をUTF32に対応させるなど地味な実装が続く。