Fix zeros erroring on an empty shape
Created by: nick4f42
Fixes #504 (closed).
8b94cc69 introduced this bug. I'm not sure of the best value to return in default_cpu_workgroupsize
if ndrange
is zero, but all ones seems to work. I might have not put the tests in the best place, too. Changes are welcome.