A Modern Introduction to Logic