無理にunique_ptr使わなくて良いや
あと,出来る限り参照透明性を守ったプログラムを書くためにクラスメソッドは最小限.
テストできるし.