add constructor
change .gitignore
Merge remote-tracking branch 'master/master'