modify ignore list.
modify readme.md description.
restruct some code.
modify dependency.
upgrade version.
Merge remote-tracking branch 'origin/master'

Conflicts:
	index.js
	test/index.spec.js