Don't do it with Squid : you need control for everything, not just for HTTP on port 80.
The answer requires iptables with the '--quota' option, which implements network quotas by decrementing a byte counter with each packet. The argument of "--quota" is a value in bytes.
There shall be one chain for each user. First rule of the chain counts down a 13 GB quota for packets from 192.168.0.2
and accepts the packet if it is below quota:
iptables -A INPUT -p tcp -s 192.168.0.2 -m quota --quota 13958643712 -j ACCEPT
Second rule of the chain classify over-quota packets in a tc class of your choice :
iptables -A INPUT -p tcp -j CLASSIFY --set-class 1:12
Then it's all classic traffic shaping : http://tldp.org/HOWTO/Traffic-Control-HOWTO/
Of course, you need to use static IP allocation or make sure that DHCP allocates addresses fixed by device's MAC address - and you need to block all addresses but the identified ones of the devices belonging to one of the three users.
By the way, you mention that "when 2 people browse the internet they should get 1 Mbps each, and when 3 people access, they should get 2Mbps divided by 3" but you can do better than that when you set up your traffic classes hierarchy: your requirement should rather be "when two people browse the internet they should not get less that 1 Mbps each, and when three people access, they should get not get less that 2 Mbps divided by 3" so that each can get more if the other people use less than their guaranteed throughput... And tc lets you do that !
Since your router is supported by openwrt and dd-wrt, you have all the tools you need !
Before you go buying new equipment check the air waves around you. If you are on the wrong channel the frequency you are using just might be saturated. Channels 1, 6, and 11 have the least amount of over frequency overlap, so choose one of them if one is open and available.
Best Answer
I have recently install Tomato on my E4200, version 1.28 by Shibby, you should definitely look at that, seems to run well.
http://tomato.groov.pl/?page_id=164
What you want are K26RT-N, which supports 5Ghz as well.
Here's an even more direct link to latest (Build '101')
http://tomato.groov.pl/download/K26RT-N/build5x-101-EN/Linksys%20E4200/
You can get the AIO build, which gives you everything. I can pretty much guarantee it will meet your needs.
EDIT: I think these are for the V1 version of the router, not sure about the newer V2's.