Print Error message when a module requests a data product without first registering the request via 'consumes'

The threaded framework requires that all modules register what data they may request by calling 'consumes', 'mayConsume' or 'consumesMany' in the module's constructor. This change will catch the cases where this was not done and on the first such request it will print an Error message to the MessageLogger.

When we move to the threaded framework all such unregistered data requests will cause a fatal exception to be thrown.