wow, was doing this too late last night. refactoring into a nonthreaded implementation based on client console messaging