code cleanup, add gitignore