とりあえずのフレームワークが完成したので上げておきます。
ソースファイルはあってもプロジェクトに追加してないものもあります。
その場合はあとで追加予定のファイルです。