Merge pull request #3 from coldnight/refactor

Refactor
Merge pull request #4 from coldnight/refactor

fix
add license
Merge pull request #5 from coldnight/master

merge add license