Add different strategies to varray, not tested
separate get_pad_info function, and add channel_communicate
add cm model when the number of workers are different across layers
Create a distabase for base operations

move util to distbase and share across all packages
move matrixmult, transpose, CompiledSource to distbase
implement conv operations in caffe style to avoid cublas in caffe
modify some test files
fix a bug crashes caffe
Move the caffe test to caffe directory
Move test files to cudaconv
Refactor garray

Move kernel functions to distbase/cuda_base
Move GPUArray new operation to garray/new_gpuarray
Move layer-related operation to garray/operation
Make input and output 4D array
TODO: remove the invocatio of cudaconv.sum in distbase/cuda_base
Incorporate caffe into network
Merge bias operation in conv layer into filter function to make caffe faster
Add some more meaningful tests for caffe and cudaconv
Add test cases for distbase, missing stride operations. Fix a typo of scalar
finish distbase test, fix a bug at stride copy
Add test case for garray and remove some deprecated functions
Add creation test case for varray
Add missing shell script
Starting with other test in varrray
Add area and fetch test to varray
Add write test for varray
Add primitive test case for varray