Here's a good start, not all required to get it done but good info.

http://www.brownells.com/.aspx/lid=11419/learn/