Essentials of Mathematical Thinking