Added much of the functionality to the three core classes.