It all really boils down to being able to match traffic with rules.
In most cases you do one of three general things:
Put all traffic in the default queue and put certain traffic in priority queues.
Put all traffic in the default queue and put certain traffic in penalty queues.
A combination of both.
My advice: start simple, get familiar with how it works, then add targeted rules and queues to solve specific problems.
In your example I would suggest the first option because your mail traffic should be pretty easy to identify with floating rules and put in a priority queue. Everything else would yield to that traffic if present.
With 65 users and 2.5Mbits total I would imagine your usage is pretty much maxed a lot of the time. Shaping should help but the real answer is probably a bigger pipe.