Classical Mathematical Logic: The Semantic Foundations of Logic