The core of an IDE
