However it is technically done, I think the real trick is to create a way to better track and value the people that are consistently good and flag those that are consistently crap. If you can then filter against this by categories that you are interested in, then even better.
Additionally, I find the current rating system insufficient because it is binary and doesn't really encourage downvoting except in case of something egregious. We need a way to identify crap spamming posts that doesn't necessarily take "votes" away but warns people that it has little to no content value.
Lastly, if there was non-binary voting that was a 1-5 vote, you could also set how much value you want to give or vote. This would allow more value provision. Currently you can just set vote percentage if you have enough Steem. Frankly this is just silly because the key thing is to rank value, not just count on numbers of people upvoting it.
I think user rank and the decrease in vote power was supposed to fulfill that function in a mechanical way (without allowing gaming of the system). Somehow, that has either been broken or is not functioning as well as it could.
A possible adjustment along your lines could be a (or 2 kinds of votes) a "standard" upvote (unlimited) and a "money" upvote, of which you get 5 a day, on a recharging basis. (I essentially wonder if people are not voting enough for the curate function to work). This way you get 2 dimensions: popular posts and valuable posts.