Test refactoring
Setup separate test fixture modules as follows:
- device: queue and other device-related items
- program: parsing and storing whole programs
- transform: transform operations on programs or kernels
- setup: facilities to setup arrays and parameter sets
- kernel: run specific kernels from a given program
- comparison: compare outputs against expected results