Add timing for GTX 980
Merge pull request #2227 from jbornschein/patch-1

Add timing for GTX 980
added op for pooling
fixing couple issues
added gradients
added tests
refactor c_set_tensor4d
safer c_cleanup_code_struct
added opt