Extract method, part one in where we a extract a method!
Extract method, part two in where we fix simple coding faults
Extract method, part three in which we give up on dope
Extract method, part four in which we loop over all updated locations
toying around with scope..