provision: more interface splitting

This one was huge.