This is a very cool idea! :) I agree it is important to have a convenient way of launching things.
I have found success using GNU screen custom config files for projects. When I open a project, it opens several terminal sessions for me in screen, each labeled, and automatically types commands in each to start spork, mysql, etc.