Add an `IExtent` interface. For #550, #553
Merge branch 'master' into domainer