Bandwidth Sharing Queue Setup (PCQ?)

So I have a question about how to set up queues to obtain the behaviour I’m looking for below. I’ve done some searching and reading about various queue setups but I haven’t been able to come across anything that implements this behaviour.

Basically, my line speed is 60Mbit down, 10 Mbit up. This connection is shared by a number of people.

My goal is to set up queues so that as long as the full connection isn’t in use, anyone can use as much bandwidth as they require. As soon as people want to use more bandwidth than is available, I’d like it to intelligently and fairly divide the bandwidth.

So, situation 1: User A is downloading a file, and everyone else is using negligible amounts of bandwidth. User A should get essentially the full 60 Mbit/s, minus whatever is required by the other connections.

Situation 2: User A is downloading a file, and User B starts streaming a video at ~4Mbit/s. User B should be able to stream at ~4Mbit/s no problem, and User A just uses the rest of the connection, or 56Mbit/s.

Situation 3: 4 users are all trying to download files at max speed. They should each get 1/4 of the available connection, or ~15Mbit/s each.

Currently I have set up a very simple PCQ queue. My only problem with it is that it works as follows:

If no one is physically on the network, behaviour is as expected, the one user online gets all the bandwidth. BUT, as soon as someone else starts opening connections, the bandwidth pool is immediately split between both users. So in my example, User A and User B both get limited to 30Mbit/s immediately, even if User B is only using < 1Mbit/s of actual bandwidth.

How can I modify my PCQ queue to get the behavior I want? Is it as simple as a setting I’ve missed when setting up the queue? Or is PCQ the wrong approach?

Essentially I want it so that the whole line speed is used as often as possible, and users only get capped as much as necessary to split the bandwidth fairly when the total demand for speed exceeds the speed of the line. I don’t want to limit User A to 30Mbit/s for a download just cause User B came online and is browsing some webpages.