I'd have thought one instance of RQB. You can tell RQB what SQL to start with and it can handle joins.
Your prototype does selection of columns which RQB does not try and do.
Might be "interesting" in that RQB might want to add/remove a table from the query as your prototype does. As a user I think that would be quite cool.
Looks like a good project. When and up and running maybe raise an issue with RQB to get the documentation (at least) to link to your project?