fix #1, add semver support


cannot bear this any more, so i do:

- feature added
- tests passed

*Don't forget `npm publish`*

Regards,
Yorkie