adds some integration plumbing like update functions