Gitignore.
Giant (and incomplete) code refactoring.