Cleaned up unit::update() a little