update Matrix
fix constructor
update gitignore