cabalized and add .gitignore