Fix >> to accept a generic building function