make project cargo compatible
add gitignore