add caching for constructors
Merge branch 'api-overhaul' of https://github.com/agibsonccc/java-deeplearning
JCublasNDArray kind of done but not really sure; getOffsetData() seems like the wrong way to get slices from arrays