Modbus: support `NaN` value definition and per sensor `scan_interval` value overwrites

Hey all,
I just setup modbus polling for some photovoltaik inverter from SMA, where some of the inverter go into sleep mode during the night, and then sending certain NaN hex codes as register readings. However, home-assistant converts them to the corresponding decimal - displaying wild numbers.

Since many sensors have defined NaN values, it could make sense to allow the NaN value to be configured in the modbus sensor definition to be automatically converted to a home-assistant NaN value.

And something else I find not optimal yet: I can define multiple modbus hubs, however the scan_interval is set only once for the whole modbus platform with all hubs and sensors attached. It would be great to e.g. allow sensor specific scan_interval overwrites to poll some sensors say once per day, some others every 60 seconds or just set different polling intervals per hub.