UTC datetime ticks and labels (fix issue 498)

Add the feature of placing and displaying time labels according to UTC instead of local time.
Provide a new option `labelsDateUTC`, and adapt the label and value date formatters, 
and the date tick computation accordingly:

 * The option `labelsDateUTC` is coherent whith other options like `labelsKMG`.

 * The date tick computation is simpler and homogeneous, and always 
   places the ticks at nice instants.

 * When using local time, ticks are properly generated on DST transitions
   (with some minor differences with regard to the original implementation).

This is a better implementation of some ideas in pull request #291, where
only the labels are formatted according to UTC. In this version, the ticks are 
also placed according to UTC at nice calendar positions.
I also wondered about that before coding the new version of the date ticker.
However, I thought that introducing the least number of modifications to anything
outside the date ticker function would make the PR easier to merge.
But if this is for a new release and you do not mind (do prefer)
having a few new lines in the utils script, my first idea was something like this:
```
Dygraph.DateAccessorsLocal = {
  getFullYear:     function(d) {return d.getFullYear();},
  getMonth:        function(d) {return d.getMonth();},
  getDate:         function(d) {return d.getDate();},
  getHours:        function(d) {return d.getHours();},
  getMinutes:      function(d) {return d.getMinutes();},
  getSeconds:      function(d) {return d.getSeconds();},
  getMilliseconds: function(d) {return d.getMilliseconds();},
  getDay:          function(d) {return d.getDay();},
  makeDate:        function(y, m, d, hh, mm, ss, ms) {
    return new Date(y, m, d, hh, mm, ss, ms);
  }
};

Dygraph.DateAccessorsUTC = {
  getFullYear:     function(d) {return d.getUTCFullYear();},
  getMonth:        function(d) {return d.getUTCMonth();},
  getDate:         function(d) {return d.getUTCDate();},
  getHours:        function(d) {return d.getUTCHours();},
  getMinutes:      function(d) {return d.getUTCMinutes();},
  getSeconds:      function(d) {return d.getUTCSeconds();},
  getMilliseconds: function(d) {return d.getUTCMilliseconds();},
  getDay:          function(d) {return d.getUTCDay();},
  makeDate:        function(y, m, d, hh, mm, ss, ms) {
    return new Date(Date.UTC(y, m, d, hh, mm, ss, ms));
  }
};
```

Would you prefer to gather the accessors in the same Dygraph attribute as in your code,
or shall we leave them into two separate attributes?