The idea of a daemon is probably best kept as a vague notion, I sort of think daemons have an uncertainty principle like characteristic where they fall apart or vanish when defined.
I think it means that some "programs" will contact Python through the web interface
Yep, I think many languages can call web interfaces, I recall doing that with Visual Basic (in a distant past) and then trying to deal with XML in the response (ouch).
Python will pass messages to the Arduino
It is just a little more complex, Python needs to look at the query string. So the URL "http://192.168.0.7:8000/?addr=0&cmd=id&q=true" is divided into parts where "?addr=0&cmd=id&q=true" is the query string. The CGI core Python library has some functions to look inside the WSIG environment and fish out the query string elements. I then can use those elements to craft my serial command for the serial port. But ya the messages get passed to an Arduino is probably the best answer.
If my interpretation is correct then that should work fine.
I mostly like where it is going, so I think the next step is to put this on an R-Pi and see if I can spin it up from there.