reorganize headers, update gitignore