Clean up
Update .gitignore
Add several header files