I'm in the planing phases of doing the same except it'll be an electric setup. I'll be interfacing with BlueTooth instead of USB, less of a PITA to implement in my opinion.
The client is used as the interface to the setup. The server actually does all the work. The client sends commands to the server, like "start brewing", "what's the temperature in the mash tun", etc.. Server executes the command and responds with success/status/data to the client. The client will have a "purdy" look =)
Reason: ASCII art did not look pretty, uploaded crude drawing =)