This article goes with Marking Traffic for Queueing.
I did use the new queue type (mq-pfifo {multi-queue packets-first-in-first-out) in this setup and it worked fine. I also had it setup with the default and it worked fine as well.
You will setup your trees per WAN connection. One for each global-in (download) and global-out (upload) for each WAN.
Make sure to send the correct packet marks from each WAN to each queue tree.