Assignment Solution Guangwei Qiu

Hi David,

I have completed the assignment. Please take a look.

A few things to mention:
1. I'm a beginner for GitHub, so I just made one final commit. Sorry about this.
2. Because I've never done unit test before, I did not implement it. But I'd really like to learn it.
3. I write a short report at the end of the script for each task.