Provides an interface for implementing different kinds of prediction strategies.