Handle invalid start/end on recompute

Clear the terrain profile when recomputing using invalid start/end
points.
TerrainProfileWidget enhancements to clear/copy data

Added a “clear profiles” button to the widget, which clears the undo
stack, clears the graph, and removes the line/marker from the map.

Added a “copy to clipboard” button which copies the current graph
image, including the hover line, to the clipboard. Also copies the
elevation profile data to the clipboard in CSV format, such that it can
easily be used in other applications, such as a spreadsheet. The
start/end point coordinates are copied to the clipboard and are
formatted using the formatter set on the graph.