Add polygon tag to transform

Fixes #1144.
Switched from browserify to pure-cjs bundler.
Optimizations and fix for JSXTransformer build.
Dropped dependency on emulation of Node.js native modules.
Added deamdify step for JSXTransformer build.
Renamed `browserify` tasks/configs to `cjs`, updated pure-cjs to 1.9.0 for better build speed.
CommonJS builder config to Grunt style for easier handling and readability.
Renamed commojs task to bundle, added failing build if bundler failed.
Merge pull request #1193 from spicyj/jsx-polygon

Add polygon tag to transform
Merge pull request #1234 from RReverser/pure-cjs

Switched from browserify to pure-cjs bundler.
Revert "Merge pull request #1234 from RReverser/pure-cjs"

This reverts commit 7987e6a51dd6e33d6736e98f038d4ace545feabe, reversing
changes made to d88d4796854569e9352a6d81489262f6566b75b4.
Handle className correctly for SVG nodes

Bring back the DOM mutator to check if the className we're writing
to is actually a string.

For SVG nodes, the className property is not of type string but
and SVGAnimatedString and writing to the property will cause
a "TypeError: setting a property that has only a getter"
(See http://jsfiddle.net/ca47V/ )

This first checks if the className property is indeed a string
and uses setAttribute() / removeAttribute() otherwise.
Test className setting on SVG nodes
Real browsers test this ok