separating configuration from engines