Merge pull request #11 from gpmgo/dev

Dev
Merge pull request #12 from gpmgo/dev

Bug fix
Merge pull request #15 from gpmgo/dev

Dev
Merge pull request #16 from gpmgo/dev

Bug fix
add new feature for local project
add test
Merge pull request #21 from ggaaooppeenngg/master

PR to dev