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 remote-tracking branch 'origin/pr/299'
use dc.utils.isNegligible in dc.units.fp