Thanks for the changes made by everybody. I have integrated the changes into the flows and split the flows between reading and writing. I have also changed the non-crucial elements (temperatures, Daily exports/ Import values etc) to be polled every minute rather than every 0.2 seconds. This takes some strain off the modbus polling.
Also added back the Total Load calc and Grid Load Calcs. For those with systems split between essentials and non-essentials with a PV system, the Total load calc provides the overall load that currently on the system (both essential and non-essentials). The Grid Load Calc provides the total load on the non essentials side.