Small tweaks to the interface and the implementation.