Fix d3.xhr for local URIs.

The test for local URI is based on jQuery's.  Although Chrome has strict
permissions, other browsers allow local URIs to be retrieved as long as
the same-domain policy is respected e.g. Safari.

We also check for a cross-domain request as req.status === 0 means
failure in this case.
Simpler workaround for local d3.xhr.

If the error flag is set, the response attribute [1] should be the empty
string or null.  So even if a request fails and the response has been
partially loaded, this logic should still work.

This check will fail for local requests where the response entity body
is the empty string, but I don't think it's possible to detect this
situation in current browser implementations. jQuery has the same issue,
for example.

[1]: http://www.w3.org/TR/XMLHttpRequest/#the-response-attribute
"Bundle" interpolation for single-element arrays.

In future we may want to generate some kind of loop, but it's not clear
what orientation such a loop should have, so perhaps a "non-line" like
this is better as a default.
Fix race condition in transition tests.

The transition-test-text callback was failing to fire when using the
latest Node.js master (82bcdbb8aaa4cf58917dc8d3fd4fcfc272512a2c).  This
was most likely due to these tests being run in a different order due to
a different object enumeration order.
Remove trailing commas.
When using Sizzle, the API for `d3_select` changes when there is no element to select. When using Sizzle, `undefined` is returned since `[][0] === undefined`. Without Sizzle, `d3_select` returns `null`. This is a problem, because IE9 does not support calling `HTMLElement.insertBefore` (see selection-insert.js) with `undefined` as the second argument; `null` is fine, though.
Return value of parsing invalid ISO 8601 date is consistent with other formats.
Merge branch 'line-bundle' of https://github.com/jasondavies/d3 into 2.9.3
Merge branch 'master' of https://github.com/bdon/d3 into 2.9.3
Always display powers-of-ten tick labels.

Previously, the log scale's tick format would hide all labels when there was not
enough room to display the requested number of ticks; now it at least displays
the power-of-ten labels. Fixes #655.
Merge branch 'fix-log-ticks' into 2.9.3
Merge branch '2.9.3'
Merge branch 'transition-test' of https://github.com/jasondavies/d3 into 2.9.4
Merge branch 'xhr' of https://github.com/jasondavies/d3 into 2.9.4
Merge branch 'master' of https://github.com/geowa4/d3 into 2.9.4
Merge branch '2.9.4'
Remove spurious whitespace from class name list before splitting to eliminate null strings, which generate an error from classed(value, false).  Fixes #675.
Fix #661; d3.interpolateTransform for rotate.
Merge branch 'master' into fix-interpolate-rotate
Fix bug with unexpected transition inheritance.

Prior to this change, transitions used transition.each internally, which had the
unexpected side-effect of enabling transitions on d3.transition(selection) when
called from within a tween function. This would only occur on the first
invocation of the tween function when the elapsed time between the transition
creation and the transition start was greater than the transition delay;
however, this is fairly common as the default delay for transitions is zero.

This bug caused unexpected behavior if you tried to redraw an axis within a
custom tween function: in some cases, the synchronous redraw of the axis would
compete with a concurrent transition, causing unexpected behavior. By avoiding
the use of transition.each internally, the user now controls when automatic
transitions are enabled.