BobP, lets talk about predictive features.
I'll ask you a simple question: suppose you have a predictive program in a sense that you click a button and the program produces tickets to play. You cannot do anaything during this process. All you do is press the button and get tickets. You don't know anything about the processes involved. In this case, would you trust these results? Would you play these tickets generated? Let me guess... NO. Do you know why? Because you'll feel put aside by the program itself! You don't take any part in the prediction process and the chances to have such a fully automated program to produce very accurate results is very low. Then you'll blame the program and call it useless even if the programmer put tremendous efforts to build this system. The reason for this failure of a fully automated program is that the programmer will try to predict tickets based on his own intuitive approach to predicting. Your approach may be much better than the programmer's. Thus a fully automated (or predictive) lottery program is not a desired one even if some people wish to have such a program. This is also why I don't construct my program in this manner. So 'predictive' features should be used where the user wish to have some analysis beyond their own capabilities.
Mixing programs together possibly have desirable results. The need to use all these programs is also proof that all of them are incomplete. Having all these features under a program, allows more sophysticated tools to be developed. For example, if you use wheels in a program and import them manually in another program to filter the tickets, what you lose is any intermediate tool that may help this transition. This surely doesn't sound clear to you because ALL the programs you've seen so far don't have such tools and so you are not aware of their existance. Allow me not to reveal these tools at the moment. These among other things make Lotto Architect a unique program. These tools cannot be stand-alone so you cannot find a program to use that tool. What I want to say with this, is that you request picking as few numbers as possible to use. Although it is desirable to pick fewer numbers and still have the winning numbers in your selection, this rarely happens. This is because you ask a part of the system to generate results beyond its limits. The other approach is to have a full system that you ask each part (eg. pick numbers for a wheel) to perform at its usual success rates and then ask another part (eg. filters) to perform as usual using any intermediate tool to enhance both these parts functionality. Your chances to win are increased this way. This means you don't have to ask for a wheel to generate as few numbers as possible. I hope I write it clear enough to get my point. So, with all these in mind I construct my program to take advantage of all steps involved.