There are two high level approaches that I could see taking with categorizing Dominion cards:
I. The functional approach (what does it do for me).
II. The mechanistic approach (how does it do whatever it does).
The first approach will put together cards like baron and harvest. Both use very different mechanisms, but they often can be swapped around in an engine. The second will link baron with xroads and maybe vault - all of them use green cards for benefit. The mechanistic approach is useful; building a green tolerant engine with something like xroads/baron/vault makes sense - just like harvest/menage makes sense. However, for card comparisons, I think it is more important to focus on the functional stuff - we don't really know what cool new mechanisms will come out and there is just so much overlap that it gets crazy.
So for the functional approach I see few basic functions that are common to a lot of dominion games:
1. Deck acceleration - get through your deck faster for greater effect.
2. Payout - cards that provide coins (treasure, action-cash, or functional equivalent like HoP) to buy deck components.
3. Payload - cards that provide VP (either chips or straight VP).
4. Action balance - cards that increase the number of terminal actions you can play ("villages" and other stuff like Tr/Golem/Prssn)
5. Multiplicity - cards that allow you to acquire more than one card per turn (+buy, gainers, possession, etc.)
6. Time buy - cards that slow down your opponent (and perhaps you, though not as much). This would include most attacks but also things like embargo, possession (in high level play), etc.
7. VP denial - cards that reduce your opponent's VP.
Deck acceleration:
Here I would look at four big subclasses; to some degree these can be swapped out for similar effect: trashing, drawing, cycling and sifting. If some other card goes into the trash that you'd like to go there, it is a trasher (e.g. chap, loan, Prssn). Drawing cards would be all those that tend to result in your hands getting bigger this would include the easy stuff like lab and smithy, but also conditional drawing (like menage, apothecary, Oge) and psuedo-draw (like Nv, haven, tactician, venture etc.). Cycling are cards that more quickly get your new cards into circulation without using another mechanism - chancellor is a classic, but scavenger, venture, and others may be used for this purpose. Sifting is selectively discarding cards in order to play others; the easy things are like cellar and warehouse, harder things are venture or farming village there are times when they do sift (e.g. farming village/courtyard in curse game) and times when they don't (e.g. venture in a lot of games just cycles). The big thing with deck accelerators is that all of them seek to use other cards in your deck more often/sooner.
Payout:
I think payout divides pretty well into: treasures, simple action cash, conditional action cash, simple gainers, cost reducers, and trash for payout. Treasures is pretty much the card type and they give you coins to use during a buy phase. Simple action cash is stuff that says + X coins that doesn't require any sort of trashing - things like mountebank, scavenger, pawn, can all work here. Conditional action cash are things like tribute, baron, and harvest - they give you cash IFF the situation meets their requirements. Simple gainers are cards that gain you other useful things - like IW, treasure map, or HoP; these don't work through the buy phase, but can be the way to score all your points. Cost reducers provide pseudo-cash by making cards easier to acquire (e.g. Bridge, Highway, Princess). Trash for payout are cards that require you to trash something to get payout - i.e. salvager, altar, forge. These tend to be the cards that your deck accelerators are looking to play more often and sooner.
Payload:
Payload is how you eventually win the game. These fall into two major categories - dead and live. Dead payload are cards that you'd normally be happier were on an island and you plan around them. Live cards are cards that you actively want in addition to their VP use. The border between the two is highly kingdom dependent - as it should be. Tunnels may be payout on board that lets you use them to gain gold; on another they may just be a third pile for silk roads. All VP chip cards are live and most of the time dual victory/action/treasure cards are also live. Simple victory cards (alt or regular) tend to be dead unless the board really lets you cash in on them (e.g. baron makes estates live, upgrade/graverobber/nobles/duke makes duchies live).
Action balance:
Action balance breaks down into cantrip villages, non-cantrip villages, and conditional actions. Cantrip villages are those which draw at least as 1 card in addition to giving you +2 action; they play well in traditional engines and often have the word "village" in there. Non-cantrip villages (like festival, necropolis) play a bit differently, mostly by working better in non-traditional draw engines. Conditional actions are those which might give you additional actions or psuedo-actions, but require some condition for that to happen; for instance Tr, Kc, and Prssn can all be used for psuedo-actions, but only if you can chain two or more of them and then pair them up with action cards to play multiple times. Golem likewise provides conditional actions IFF you have two or more non-golem actions in your discard/draw deck. Other conditional actions include xroads, iron works, and tribute. Pretty much, action balance is only an issue in engines and ultra lean decks (e.g. Kc/Kc/Mon/Mon/Bish); it doesn't play a big role in BM type games.
Multiplicity:
Multiplicity is most useful for engines, but can rarely be good for BM type decks. It comes in a few main flavors - +buy, simple gain, trash for gain, and freebies. +Buy is anything that has that phrase written on the card. Normally you need just one two +buy, but it can pay to have more on some boards. Simple gain is multiplicity when it is used to more quickly build up needed cards than to get VP bearing cards; IW, workshop, armory, Hop, etc. can all be used to acquire more cards any given turn, trash for gain is anything that requires you to trash something else to gain a card the entire remodel family falls here, but also altar and catacombs. Generally, multiplicity cards are engine enablers, though a few odd ducks can work in BM (e.g. trader).
Time buy:
Sometimes what you really want out of card is just to buy a few turns to do whatever you think is strongest. These are the cards you use to prolong the game by buying them. They fall handily into attacks and leaches. Attacks have the attack card type and make your opponent's hand less powerful on average. We can split this group further into junkers (gives away junk like curses, estates, coppers, etc. - these can end up not be time buys if they enable a 3-pile rush), discarders (reduces hand size), and deck muckers (puts good opponent cards in trash/bad ones on top or in trash). Not all attacks are time buys - thief can be, but may not be (same with NB). Most discarders are not when tunnel is out.
Leaches are cards that force your opponent to alter strategy because you derive more benefit from his moves than he does. Classic leaches are possession (where you opponent may have to adopt a slower strategy just because you went down the potion route), smugglers (forcing your opponent to not buy to your strengths), and masq (tends to equalize worst cards, can steal/burn powerful ones).
VP denial:
This is an odd bunch of cards that can destroy opposing player's VP. The biggees are Sab and Swindler. Other more conditional options include masq, thief, noble brigand, knights, and rogue. These are cards that can win you the game when you have already let 50% + 1 of the VP points out there (ignoring curses) slip over to the other guy.
Other functional categories I've considered: hand management, deck management, reactions, and easy 3 piles but I'm not sure they are that generally useful as concepts.
So where a card falls is a less a question of how works, than how you intend to use it on some specific board. Some are simple: coppersmith is payload - he gives you more coin and not much else. Some are simple combos (activated cities provide action balance, deck acceleration, and payload). Some are conditional and complex combos (baron is normally a payload card, but can be a multiplicity card for a gardens rush). Some change completely when the board changes (thief is payload most of the time as you just gain cards, but it can become a payload card with harems out).
The important thing is to define your strategy and then find which components can help the most with what you want to do. For instance, let's say your strategy is to build an engine to cash out HoPs for provinces & estates. Okay, well then you will need acceleration to play your HoPs and line them up with different cards. So you should look for some draw/trashing or sorting to get the HoPs and their activators lined up. You could do something like venture/cartographer/kingdom treasures or something like cantrips & cantrip draw. However let's say your only option to get enough cards to get good odds on HoPs is smithy. Then you need to look at your options for card balance - festival is pretty bad here - it doesn't draw a card and it competes on price with HoP - it can be completely correct to option for hamlet/xroads here over festival. HoP then provides multiplicity to set up a draw engine and maybe you should grab a militia to slow down your opponent's Smithy - BM.
Not every deck needs every component. Attack decks can work with zero deck acceleration, only cash for payload, and end the game without a single payload card (winning -1 to -3) for something like hag/cultist.