http://jsdo.it/uhauha909/5zoU のプログラムをlocalStorageにデータを保存するように修正してください。回答はソースコードにてお願いします。一番早い回答者様に最大ポイントを差し上げます。
http://jsdo.it/rikuba/6lJR
描画をオブジェクトとして扱うためにいろいろとコードを改変しています。
http://jsdo.it/syamaoka/6nlW
要件を満たせているか分かりませんが、localStorage に canvas を base64 にして保存するようにしてみました。保存する際に複数の canvas を1つの画像データにまとめてしまっているので、restore した後に erase できません。ちゃんと復元できるようにするとなると、canvas を生成する処理自体を履歴として localStorage に保存しておき、復元時にその操作を再生する方式が考えられるでしょう。今回は手間がかかるため実装してません。
はてなポイントは使い道がないので不要です。