The way you do your queries bugs me, still.
Also, you really need to make an error handler or something so that you don't have to check every result for an error. I do like the passing of the parent object, though, I never thought of that. And lastly, passing $arg = $_GET is redundant. Personally, I'd assign the plugin's $arg values inside the _main function instead of passing a clone.