big refactoring, some bug fixes

git-svn-id: https://plugins.svn.wordpress.org/query-wrangler/trunk@814590 b8457f37-d9ea-0310-8a92-e5e31aec5664