Fix Firefox time interval bug for Europe/London.

d3.time.day should always return midnights.  However, Firefox doesn't
return midnight for the following:

  var d = new Date(1970, 0);
  d.setFullYear(2011, 8, 22);
  // Thu Sep 22 2011 01:00:00 GMT+0100 (BST)

Chrome and Node.js return:

  // Thu Sep 22 2011 00:00:00 GMT+0100 (BST)

This is because `new Date(1970, 0)` has different daylight saving
behaviour in the two browsers.

Chrome: Thu Jan 01 1970 00:00:00 GMT+0000 (GMT)
Firefox: Thu Jan 01 1970 01:00:00 GMT+0100 (BST)

In fact, Firefox is more correct!  The UK was on permanent BST from
February 1968 until October 1971.  This seemingly minor difference in
interpretation results in non-midnight times being returned for all day
intervals and other intervals that use d3.time.day internally.

The fix forces midnight to always be returned.

Fixes #1196.