I agree about having lots of different fields. I once worked somewhere where after a series of acquisitions 11 different bug tracking systems were collapsed into one! Having arbitrary labels mitigates most of those. IIRC Google Code also lets add as many different states as you want so that works too, letting projects be as simple or complicated as suits them.
Priority is more about scheduling and importance ignores planning/managerial issues.
We used "Resolved" and "Closed" for two different things in work too. I was missing those distinctions on afterwards.
Remember, always remember: A tracker is supposed to help you develop your software faster and better. Meta-work should never get in the way.
Github labeling way of prioritizing and what not is actually harder to keep then fixed fields. You can live with that, but it requires more effort and attention to be useful.
Anyway, the problems the parent complained about are not in priority/importance category. The inability to do prioritization more practical then labels or milestones is a big thing. It is standing in a way, because you have to spend too much time in issues list and essentially re-prioritize in head again every time you are looking for something to do.
Look at bugzilla: So many fields most people don't need. Who needs to separate "Resolved" and "Closed" for example? Who cares about the OP's platform when you're building a web app? And why is "importance" different than "priority"? Why is there a keywords field, a tags field AND a whiteboard field? Wtf.
But all these are actually useful to some people out there. The problem is the end result is a mess. I find github issues to be good enough for 99% of non-massive/non-corporate projects out there. People can just go check out your project and add 3-4 bugs/suggestions as easily as they would comment on a blog post.
Personally what I miss is being able to flag a bug as a dupe of another. But again, do most projects need that is the question.