refactored Request and so on
Merge pull request #1 from ChristianChen/master

The latest code