Merge pull request #787 from jjofre/master

Fix x-axis missing label issues with Qt 5
Compare mode for LTM

You can now compare seasons / date ranges across or between
athletes on the LTM charts.

This is only shown on the stack chart as we need one chart
per data series - in a similar vein to the AllPlot chart.

There are some tidy ups left to do over the next few days;

- Data table needs updating to support compare mode
- Event markers need to be shown and in the right color
- PMC curve data is slow, needs some kind of optimisation
- The tooltip is missing and needs to be put back
- Ensure the new stack frame looks correct when using a
  dark plot background (or anything other than white)
- Consider how to handle zooming when there is only one
  data series and hence only one chart for compare
Update Default Trend View

.. the trend view layout default has been updated to reflect
   recent updates to the capabilities of the charts, notably;

   * Data Table to summarise recent key markers / indicators
   * Data Labels on charts where appropriate
   * Color scheme slightly altered to plot more appropriately
     when in compare mode (less contrast, less vibrant palette).
LTM Compare Fixup legend

.. always hide the meaningless legends for trend, outlier
   and best curves since they are the same color as the
   curves already listed in the legend.

We should apply this to the normal view too.
LTM Compare Fixup Markers

.. show event and season markers on the compare plot
   helps to provide context against the week/month offsets

.. also fixed up how bars are lined up and that each plot
   in the compare stack has the same x-axis
LTM Compare Fixup Tooltip

.. now shows a tooltip on the stack charts so will also
   fix normal mode stacked too.
AllPlot isolate curve on mouse over

.. disabled the effect as its NASTY and flickery but saving the
   code anyway as we might do it by a mouse over the legend ??
AllPlot Isolate on Axis Hover

.. less jarring and useful when setting a reference line
   for power as it isolates the power series.
AllPlot Series Stack Sizes

.. now set to the user preference when a ride is selectred where
   previously it would set to 200px.
Ride Plot Isolate curve on click

.. we now isolate a curve temporarily with a click on the axis
   so you can mouse over / look at the curve on its own

.. it would be good to also 'dull' the other curves and their
   axis labels so we have a little context .. will look at that
   next .. it might not be so 'clean' though.
Ride plot SEGV on reference lines

.. we SEGV when they are removed and we use the new
   'isolate' curve mechanism to hide/show curves

.. also now keep a track of the reference lines in the
   CurveColors class
AllPlot Isolate IntervalCurve (HeadWind, Power Balance)
Ride Plot Isolate Curve Fixup

.. reset isolation when resetting curves etc

.. added a visual cue by dulling the axis scales to grey
   when isolation is active -- to let the user see what
   happened when they moused over an axis.
Reference Lines only when Plotting Power

.. the stack series plots allowed reference lines to be added
   on charts that didn't actually plot power data
Ride Plot Isolate Curve Fixup for Compare Mode

.. a few SEGVs when restoring state to a plot that has
   been reploted / curves deleted or added etc.
Optimise out WPrime in AllPlot

.. it was erroneously being computed in AllPlot even
   when it wasn't selected on the plot