SVG Essentials: Producing Scalable Vector Graphics with XML