A system designed for the creation and development of games, which may be built up of a graphics engine, a physics engine, an audio engine and a scripting engine (and whatever else engine). The engine may include some editing tools, but I don't think it's essential to defining an engine. My basic text adventure engine just relied on scripting and required no editors (except Notepad), of course I could have coded an editor for making the scripts, but instead I'm lazy and just use a template of my basic script and just added what I needed.
The way I've approached engines is that you've got all the game elements already coded, you've just got to script in what you need and add the content. Of course, some engines offer more freedom than others - some try to cover as many bases as possible so you've got a lot of flexibility when it comes to scripting and some will allow you to edit the source code and recompile the engine.
Of course, at the end of the day it's all designed to be a time saver. If we were to use examples:
Dark Basic Pro - Not a game engine, but a programming language based on basic and is built around Direct X 9.0
FPS Creator - A Game Engine (which was built inside of Dark Basic Pro)
Both of course can be used to create games.