pull out update into controller; remove my copyright headers.. whoops