Core classes and methods.