Fix a TypeError in InlineAllStyles in Chrome

The first time inlineAllStyles is called, the chartStyle attribute may
be null in Chrome; protect against this so initial chart rendering
works.

Also fixes the indentation formatting of the InlineAllStyles function
for readability.
Fix layout calculation for legendItems for Firefox

elem.select("text").style("width") returns "auto" instead of a pixel
width for Firefox because no style is actually applied to these
elements. Use elem.node().getBBox() instead. Tested in Chrome 28,
Safari 5.1.9, and Firefox 22, should be supported in IE 9+ per MSDN.
Merge pull request #53 from hpshelton/master

Fix initial layout bugs in both Chrome and Firefox, better style parsing