Store v2

註記
1.有不少部分參考了解答，第四部分的作業還沒寫，要找時間再寫
2.之前寫在一個沒有fork的版本(是clone的),所以整個commit只有一個homework @@
還不知道怎麼弄過來，是直接copy的.