Arbitrary X Axis Labels in DateY & Range in XY and DateY

Updated DateY to allow arbitrary x_label labels.
These are supplied via the .x_labels input, and should be an array of datetime objects.
The display range of the graph includes all the labels and all the data points (even if the labels are bugger than the data)

Updated SVG code to allow JSON serialising of the datetime objects (as not included by default

Note:
When creating the SVG, if the first data point lines up with a label, then the "y axis" (a solid white line) is drawn through that data point.
Otherwise, it is drawn on the left most edge of the plot