[add] first commit

* 各種detail
* enumerator
* enumerable
* enumerable.filter
* enumerable.take
* enumerable.to_
* enumerable.to_vector
* enumerable.to_deque
* enumerable.foreach
* from
* repeat
[add] ODR違反のリンクエラー検出用にinclude_test.cppを追加
[add] mapを追加

* enumerable.map
[modify] ソースファイルの文字コードをShift-JISからUTF-8(BOM付)に変更
[modify] VC++がエラーを吐くため、ラムダ式の戻り値をuniform initializationで推論させないように変更
[add] take_whileを追加

* enumerable.take_while
[modify] 微量のパフォーマンス改善
[fix] foreachを実行すると、同じenumeratorを参照しているenumerableの操作結果が空になってしまう問題を修正

* foreachが直接enumeratorを操作していたため、一度コピーするように修正
[fix] 誤解のある文言を削除
[fix] take_whileが空のenumeratorに対して正常に動作しなかったため、条件式を修正
[fix] enumeratorを連続でインクリメントした際、1つしか次に進まなかった問題を修正
[add] dropとdrop_whileを追加

* enumerable.drop
* enumerable.drop_while
[add] reverseを追加

* enumerable.reverse
[remove] to_dequeを削除
[add] iterateとそのオーバーロードを計3つ追加

* iterate
[add] foldlとfoldrを追加

* enumerable.foldl
* enumerable.foldr