efficient design patterns with protocols and delegates; Create animated 2D games with