Merge pull request #1 from CasaTeam/master

Some Refactoring and Modification
Merge pull request #9 from comiscienceknight/master

Merge pull request #1 from CasaTeam/master
Merge pull request #10 from sawyerlin/master

Merge pull request #3 from CasaTeam/master
Merge pull request #4 from CasaTeam/master

Merge pull requests #3, #9, #10