faces/horizontalbars: Allow specifying the data range from config
In some cases, we may want to display sensors using this face that don't have a proper min/max range. So add the same sort of configuration that we have for other faces so it becomes possible to override the automatic data range with a manually specified one.
While at it, port the actual bar implementation from a manual implementation to a ProgressBar with overridden contentItem, as that makes the code a fair bit easier to work with.