add portal update to view, add portalupdate model, migration, extract update script to lib to keep controller small