The Essentials of CAGD