add .gitignore
big refactor, standalone builder