adding documentation and gitignore