Not to forestall further in-depth, comprehensive answers to this question, but the venerable /u/Samuel_Gompers wrote an excellent reply to a very similar question here that might help answer your question.