Thankyou bonaire and shadowsnipes for contributing to this thread. Unfortunately, bonaire, qdbus was not installed by default on my xfce4 system (maybe I needed to install all the kde packages) so I was unable to test your suggestion. However, the tools suggested by shadowsnipes both were able to get the job done.
I created some s-expressions of the form:
(if (contains (application_name) "Konsole") (set_workspace 2))
(if (contains (application_name) "Firefox") (set_workspace 3))
... and so on for all my apps
and saved them in ~/.devilspie/sexp.ds and then added devilspie to xfce4 session autostart menu, and I have the desired behavior, though I do notice a delay when apps startup as the s-expressions are processed. Despite the desired behavior being achieved, if I use the -d (debug) flag, some kind of error is reported:
** (devilspie:3205): CRITICAL **: e_sexp_eval: assertion `f->tree != NULL' failed
Changing workspace to 2
It still changed the workspace, so I'm happy... but errors always make me nervous, and I noticed in the output of ./configure when I was compiling the phrase in allcaps, COMPLETELY UNSTABLE, and I noticed that the man pages were written on a train, but I'm using it anyways.
Thanks again. SOLVED by shadowsnipes!