Close tab on save

retrieve on save
remove redundant update()
run network tasks in a background thread
make retrieve call static