Guaranteeing that progress is betwene 0 and 1 when updating progress in CLOperation