Tighten up types on overrideable functions.