Use member variables to store grid dimensions
Remove variadic arguments to speed things up
Add CUDA API wrapper class
Add CPU belief propagation implementation
Add CPU ICM implementation
Wrapper class to make accessing flattened arrays easier
Add class for representing a Grid on the device
Add CPU alpha-beta swap implementation
Add functions to perform simple approximate inference