Nice.  Why we can't just return an unevaluated ImageSet in the `Interval._eval_imageset` (see #2723).

@mrocklin, does this make sense?