* Fix radio pin settings where the old values were being set to the config then reloaded. This meant that the new pin settings were not being saved.
* Disable the radio when the radio cannot be configured. This stops the microcontroller from hitting a hard halt and allows the pin settings to be changed.
* Add ethernet configuration options in preparation for boards with ethernet connections.
Originally the address used for the SSID would become inconsistent because of the way the ESP32 uses the string class to store the SSID. This would eventually end in an emit that crashed the socket from the client with an inconsistent UTF-8 byte. The fix was to convert the string to a pointer for the emits.
All object references not look for cached script file. This eliminates the need to reload the script when simply rendering the page. ESP32 does not need to download this data if the cache already has it. Implemented versioning on the script tags.
* Employ flex elements for shade control
* Disable the annoying Apple context menu
* Fix text overruns for smaller screens
* Time mouse and touch commands so that they can coexist
* My button long presses detected from remotes for setting the my button.
* Allow setting of rolling code.
* Tuning for position setter and reading of hw sync bytes for repeats.
* Increased the number of APs that can be queried and filtered out those that have an RSSI -95. Previously, the number of returned SSIDs could blow the output buffer.
* Do not disable the Save button during scan of potential APs. If the scan is taking a long time you should just be able to type it in.
* If a connection is lost and cannot be recovered fall back to AP mode to allow resetting the creds without power off.
* Reduced socket traffic on load.
* Added code to check max socket connections and reconnect when a slot becomes available.
* Improve load times for Shade Manager