A lot of changes.
Merge pull request #1 from Skyost/master

A lot of changes. by Skyost