SVG lazy update

SVG Lazy update for attributes.  Profiling showed setAttributeNS was a very slow operation on Firefox, Chrome Safari and IE.  Since most attributes don't change from frame to frame, on calling setAttributeNS for attributes that have changed speeds up rendering considerably.

This has passed the test suite (which is pretty cool by the way).