More work on core functionality.