Text this: Multi-class dynamic traffic assignment with link capacity constraints