Each year I try to learn a new skill. One could say I'm kind of a nerd's nerd. Lately, I've been getting more and more interested in gunsmithing. I know this is something that has to be learned hands on with an instructor, but I want to be read in the subject if I ever take any classes. The books can be pretty technical...I'll pick up on it. I'm the kind of person who will read a text book for fun.

What are some good books on:
1. Stockmaking/inletting/finishing
2. Metal finishing
3. Mill and Lathe work
4. CAD/CAM programming - I did have one question about this. Are the programs proprietary to the machines, or do they vary on what type of work you're doing? Do you have to write code or any scripts for them?

Thanks!