For example, if I want the size of my brush to increase with pressure AND decrease with speed AND have a little bit of randomness... or if I want the anim brush to be random AND respond to speed...

Perhaps it could be an interface where we could "mix" the current connection using mathematical expressions like [pressure]/([speed]+1)+[random], give it a name like "PressureOverSpeed", close the interface and then "PressureOverSpeed" will show up in the list of connections for any of the brush properties.

Another way would be to have a "Custom" option in the connection list - which opens a profile editor that can stack various connections.

If there was a way to do this in a general way (any number of connections working on top of/with each other) it would open up a rich area for new brushes.