To texture these objects I've used just cylindrical and box mapping with unwrap modifier to texture some more complex stuff and parts. A few words about wall: simple planar mapping was added to put textures on them.

Then I have created bump and specular maps for all textures. Here you can see an example of the textured train with different color variations without dirt:

The images below are some of the close-up views of the textured locomotive: