datetime64 dtype full use 2nd order method

* An array of dtype datetime64 will now use the higher accuracy
method for _both_ the interior and edge points.

* For datetime64 data a view of ints is made of the array and
the numerical differentiation performed on the view.

* Tests for the the numpy.gradient function have been updated
to reflect the the higher accuracy of the gradient at the edges.