Refactored Change.{fold, map, join, filter, notify => perform}