How do i apply textures to be placed correctly?

Hello there.

I have been learning the basics of BLENDER so that i could rig some weapons to work with source. I have fixed my Faces problem, but now i have another problem. The textures are placed incorrectly.

What program/programs do i need so that i can make sure that the texture applies correctly? The model has a complex shape, but if i could flatten the model somehow i could figure out easily from reference pics where the textures go, but how do i do that in BLENDER?

Thanks!

Fixed it. I rigged it incorrectly the last time.

But it still would be nice to know how to do this.