Apparently, node.js uses uppercase nodeName, so use toLowerCase() to change it.
Use width and height attributes rather than styles.
Add options useFontCache and useGlobalCache to control use of <use> elements.  Also add Fixed() method to make shorter values for scale and viewport.
Change where ID is modified so that the cache properly accounts for it.
Make fallback parser clear itself after use, so there isn't an extra <math> element left over at the end (typsetting again causes problems).
Make glyph data be part of BBOX.GLYPH, and make sure that resets don't increment the counter for local <defs> elements.
Add comments
Correct ID for global glyph lookup
Add missing array in signal data
Mark SVG spans as MathJax ones properly.
Merge pull request #874 from pkra/nodejs

merging @dpvc's Nodejs branch into develop.