Parse backend responses more sensibly for lvalue widget

Currently, lvalue widgets simply take the last two datapoints received from the backend as the results to be displayed. This causes an issue if the widget receives datapoints from the backend with times that don't correspond with the times the lvalue widget needs.