bill preston