Fix #1850 - multiple touchstart targets.
removing .js extension from the 'main' property
Don’t store temporary variables on tree nodes.

Rather than creating a temporary _tree hash on the tree nodes to store temporary
variables needed to compute the tree layout, the tree is wrapped. This
eliminates the risk of a namespace collision, and eliminates the need to
subsequently delete temporary variables. (They will be garbage collected.)
Non-recursive tree layout.
Non-recursive hierarchy layout.
Abbreviate internal variables.
Make scaling non-recursive.
Merge pull request #1873 from mserinjane/master

removing .js extension from the 'main' property
Add Finnish locale
Merge branch 'fix-multiple-zoom-touchstart' into 3.4.7
Merge branch 'non-recursive-tree' into 3.4.7
Merge branch '3.4.7'
Fix hierarchy.revalue.

Post-order traversal alone causes all parent values to be reset to zero
*after* accumulating child values.

An additional pre-order traversal resets all parent values to zero
first, and the post-order traversal can then accumulate child values in
their parents.

This only affects sticky treemaps.
Style tweak.
Merge branch 'fix-hierarchy-revalue'
Add spm support
Use Element.matches if available

Spec:
http://dom.spec.whatwg.org/#dom-element-matches

Support in Chromium:
https://code.google.com/p/chromium/issues/detail?id=326652
Always expose D3 onto the environment global

With regards to #1689 adding AMD compatibility, it seemed odd to me that
D3 opt'd out of exposing itself globally for third-party plugins.

Within a discussion about this very problem, found here:
https://github.com/jakevdp/mpld3/issues/33#issuecomment-32101013

the argument is made that exposing the global defeats the point of
module systems.  I agree that module systems help avoid global
pollution, but that is not something I'd consider the point of module
systems, especially since they are registered in a global namespace
themselves.

This patch will fix third-party modules that are shimmed.
Support instanceof d3.{color,rgb,…}

This also makes it possible to create a subclass of d3.color outside of the core
library, which would then support automatic interpolation.
Revert "Remove workaround for WebKit bug 44083."

This reverts commit 2b148070553c9493cae01d4960d283ec5bdf957f.

Fixes #1903.