Surface Pattern Design: A Handbook of How to Create Decorative and Repeat Patterns for Designers and Students