Added class to automatically determine what types of pattern an estimator needs.
Now mostly automatically deciding which patterns need to be counted.