Refactor: language list
Remove original exception, replace with std::runtime_error
Refactor: remove <random> header for old platform
Check: build and run with gcc4.4

ただし、clangはビルドが通るが実行時に死ぬ。原因が不明