Add wait_list class

This adds a wait_list class which contains a vector of OpenCL
events that can be waited on before executing further commands.