Your cheapest option is to have one (single) google apps account which will cost you around $5 per month. Make it something very general like firstname.lastname@example.org. Then in the google apps dashboard make it a catch all address. This will make the single inbox catch all email for accounts such as Sales@, support@ bob@ or whatever at your domain.
Then you can set Gmail filters to sort (label) each incomming message based on who it was sent to. For example you can have messages sent to frank@ automatically labeled as frank.
Next you want to create regular old gmail accounts for all of your individual users. I am going to follow the example of creating a box for email@example.com for this instance.
- Create Google Apps primary account (catch all) as firstname.lastname@example.org
- Create Gmail account for email@example.com (regular gmail account)
- Create filter rule on Google Apps account for all messages sent to firstname.lastname@example.org to be forwarded to email@example.com. You can further mark them as read or delete them upon forward.
- In the firstname.lastname@example.org create a sending alias as email@example.com. Google will give you a 4 digit code, and now when logging in as firstname.lastname@example.org i can both send as email@example.com and recieve all email since its forwarded to this account.
Also make sure to set default reply:to addresses in case you send from the firstname.lastname@example.org address.
Using the technique above you can get all the benefits of having a pro google apps account (dkim, spf, 25gb inbox) and with a little bit of configuration you can setup multiple gmail accounts which run off the single account. We use the technique above and it works flawlessly. The only thing that doesn't work is mailbox delegation, which is not that great.
If you wanted to save the $5 you could get away with using something like GoDaddy free email forwarding, but then you would be limited to godaddys 250 message limit per day.
The approach above just works.