I've generally found that when it comes to decorations, local, non big-chain petstores tend to have a better variety of different tank stuff, as I can find the same little castle or bridge at Wal-mart, Pet-co and Petsmart around here.
I also tend to make a lot of decorations on my own, holdover from marine science classes. If you have a local gravel or slate rock store in your area (or even a quarry itself for your northern folks) swing by there and ask to have a look around. You can generally find some great rocks or all sorts of shapes and sizes, and get them for WAY cheaper than what you'd have to dish out for something comparable at a petstore. I've built many a rock cave from rocks from a local gravel store. Just stack the rocks as your please in the tank. If you have very energetic or destructive fish (or just want to be safe) get some aquarium silicone and "glue" the rocks together. Doing this allows you to build much more complaex and intricate structures.
Also, check your local hardware store (Lowes, Home Depot, Scotty's, etc) for PVC. It's safe to use in tanks - just give it a good soak and scrub treatment every day for a couple days before going into a tank. I've used PVC piping in reef tanks as well as fresh water, works fine. You can find some really fun shapes to make into cave and tunnel systems by looking at the various PVC joints your hardware store carries. You can either leave them whole and just half bury them in subsrtae to keep them from rolling about the tank, or chop them in half. If you want a more "natural" look in your tank, just coat the PVC with whatever substrate you have in your tank (be it gravel or sand, or even glass beads, it matters not) . Just smear on the silicone and then roll the pvc in whatever you want it to be covered with, let it dry and air for a few days, whal-la you have a cave customized for your tank.