BUG: fix OpenCL path when vendor is AMD.
STY: group OpenCL kernel files in the project.
STY: use `#define` guards instead of `#pragma once`.
STY: improve message when throwing exception.
MAINT: enclose opencl instructions within try-catch statement.
ENH: add readable OpenCL error code.
MAINT: remove extraneous file.
BUG: add missing semicolon.