Made TensorView copy constructor non-explicit to allow returning TensorView from a function.
Created diag(T) function that makes a TensorView of the diagonal of T.
Merge remote-tracking branch 'BTAS-emstoudenmire/rslice'
Revert "Merge remote-tracking branch 'BTAS-emstoudenmire/rslice'"

This reverts commit 2f46eb317a31a48717af07cb227de805413f44b4, reversing
changes made to b765bb5e58099eb15a35e5d71098b0f3eeb0bba4.
Cleaned out tarray.h, stride.h is gone.
Introduced BoxOrdinal.permute().
Minor cleanup of StorageRef.
Fixed const issues in TensorViewIterator.
More TensorView constructors are non-explicit to make syntax cleaner.
RangeNd can be sliced to help TensorView … Tensor can be safely initialized with sliced/permuted TensorViews
NDIterator gone … TensorViewIterator plays its role, but behind the scenes. TensorView is the central player now. Further development of Tensor syntax is needed.
Ooops … forgot to add tensor_func.h earlier.
Fixed type in the name
Tensor can be used again as a Tile to construct TiledArrays.
Tensor is now can be used as a Tile in TiledArrays not only for array construction, but also operations.
Merge pull request #18 from evaleev/master

sync with evaleev/BTAS ... NDIterator is gone, Tensor works as a tile in TiledArray