in flattenStacks, use a set to test belonging of ordinal Xs

the previous solution in PR #251 was still using relational
operators to test whether points' x coordinates were in the domain

this is not correct for ordinal coordinates, which don't have to be
ordered by the key (the domain specifies the order, not the
relational operators)
a test for ordinal x elastic y
fix bar gap error caused by fp.precision off-by-one bug

when the domain is very close to a multiple of the precision
(which happens frequently with binning), floating point error
can cause fp.precision to deliver an x unit count that's one too high

this causes ugly big gaps between bars.
Merge pull request #298 from gordonwoodhull/ordinal-x-elastic-y-2

in flattenStacks, use a set to test belonging of ordinal Xs
Merge remote-tracking branch 'origin/pr/299'
use dc.utils.isNegligible in dc.units.fp
update d3