Changed the engine API to support incremental runs and added a better example app.