overly-abstracted engine