Just want to share a tip about Gmail's message rules:
By default, a message rule that assigns a new label *also* keeps the default Inbox label. When seen over IMAP, filtered messages then appear in two folders.
To avoid this, i.e. to have the filter *move* rather than *copy* messages, select "Archive (skip inbox)" when creating your rule.
This leaves the inbox with just those messages that didn't match any filters. To me, that's just perfect.