If you’re not familiar with contour lines on topo maps, this diary is not for you.
I had mapper’s block in the capital of New Woolly (inspired by Washington, D.C.). I had created the irregular grid, but had no way to pick out major streets or anything else.
So I decided to add terrain, including hills and valleys with streams. If you download the city in JOSM, you’ll see that I abused the piste:difficulty tag to color-code every-25-foot contour lines (alternating between red and green).

The Wool River flows south to north through the middle. Millions of years ago, it was a bit to the west, but a landslide in the valley that now contains North D Place forced the river to cut a canyon to the east.
So now you have terrain. There are relatively steep hills (it’s simple enough to calculate grade in JOSM; normal street grade is in the single digits, while residential streets can reach 35%. The motorways, trunks, and primaries have been laid out to avoid these hills or tunnel through them. Tram lines follow other streets that do not carry heavy car traffic. The CBD has a nascent lower level (see Chicago for an extreme real-world case). Bridges help flatten out steep grades on main roads.
My work is not done. Much of the grid on the outskirts is incomplete. Streams need to be bridged or undergrounded. Some streets still need names.
Discussion
Comment from vtk on 14 January 2015 at 17:19
Rather than abuse tags, maybe consider inventing your own tags for whatever purpose you need, and have a simple .mapCSS stylesheet for the desired appearance. Here’s what I use for mapCSS reference: JOSM MapCSS Implementation