Removed redundant phantom types, cleaned up random stuff, exhausted patterns, and added to .gitignore