In another game from the way back machine (Outpost), factories could produce road sections, which were stored in warehouses, as long as you had space. Placing said road sections took a number of your worker population, so if you placed a whole bunch at once, you could tie up your entire population and not get any other buildings built until said sections were complete. You could also build monorails, etc. as your tech progressed.
Come to think of it, since population is now a resource, it makes sense that you'd allocate a portion of your population to the road project. To put this in terms applicable to Elemental:
Road Type----Population Required----Bonus
Path-------------------1-----------------+50% movement
Dirt Road--------------2-----------------+100% movement
Gravel Road-----------3-----------------+150% movement
Brick/Cobble/Paved---4-----------------+200% movement
Caravans would provide whatever bonus they provide 'upon arrival', so if they move 3x as fast, you'd get said bonus 3x as often. Or you could simply increase the bonus by 3x if that's too complex, although I like the idea of 'caravan hunting' for gold, food, etc.
Using this method, you could build as many road sections as you had population to spare. There probably should be a nominal Gold cost as well (say 1-8 GP per square or mini-square, based on road quality). Simply click a 'build road' icon, and then click where you want said section. And, perhaps you could only build paved roads on top of gravel roads, etc... Some materials may also be required for building (clay/bricks or stone).
Said 'build road' icon might be part of the City popup icon on the map, so you can designate which city is providing the workers for said road project.
Bridges (if rivers/streams ever show up again) would take 'x' amount of gold and workers to complete. Bridges would require materials to build, be it stone, clay, or lumber.
Along this chain of thought, workers (population) would be required for any project you undertake, with the bigger projects requiring more population. Also, along these lines, you could start as many projects as you wanted in a city (not just one), as long as you had the workers/population to spare. Plus, once said buildings are built, they'd have a 'staffing' requirement. Someone has to work the wheat field or do the arcane research, after all!
Outpost had three levels of population - children, workers, and scientists. All required food of course, workers and scientists could build stuff, but only scientists could work in labs. Scientists were produced by building schools for them to study in, btw.
A similar concept could be used in Elemental (children, workers, researchers, mystics), if you wanted to get that specific...