Implementing data structures on a hypercube multiprocessor, and applications in parallel computational geometry