You have two options, the one that gives you the most control, setting up a google apps account, or the one that is easiest to setup, using your host's pop3 in gmail.
I personally use the first option. I've currently got Google Apps setup on my own domain, dkuntz2.com. The gmail account for my apps (don@dkuntz2.com) is set to forward all mail to my gmail account and archive everything (so I still have it if I need it). This is in settings -> forwarding and pop3.
On my gmail account, I set it up so that I can access the dkuntz2 account (it's in settings -> accounts, just type in the email address, that one will get a message saying confirm, you click the link and bingo, you've got send access). This way, everything is controlled by a central gmail account, but I can still send as dkuntz2. I've also done this with two other domains, and it works soundly so far.
In my own settings I've also told it to respond as the address that's mailed to (so if I get a dkuntz2 email it sends it as dkuntz2, same for the other addresses), and each address also has it's own signature (more fun settings).
In Gmail you can use a search operator which if you get more than one different email address forward to you in the search bar you can typpe to:theemailaddress@gmail.com and then you can get all that mail from that address, you can also do that for mail from a address.
With a IMAP client you can index the files better which means more faster searches.
Best Answer
So, I realized there was a setting that was making all emails drop into trash on Apple Mail. This in turn was feeding back to Gmail and causing all messages to be moved to trash. This article told me the correct setting to be changed in Apple Mail preferences->mail box behaviours. Specifically:
Drafts unticked,
Sent unticked,
Junk ticked,
Trash unticked.
It would be nice to know the mechanics of why this works but that's a chapter for another day.