Removed shared_ptr from contract method, replaced with class optional_ptr which combines functionality of raw pointer and unique_ptr depending on how it is initialized.
Minor doc update.
Updated TWG::Tensor concept. Closes #35
Rank-0 Range should be area of 1, not 0 since rank=0 = scalar, i.e. contains one value.
Revert "Rank-0 Range should be area of 1, not 0 since rank=0 = scalar, i.e. contains one value."

This reverts commit d76fe62faf1bcf77528663fd94670e1a8655b5e1.
Resolved ambiguity between Tensor::resize() functions.
Should resolve issue #35
Closes #37
resize does not reallocate when resizing to smaller sizes
to make it compilable with -Werror and -DNDEBUG
to make it compilable with -Werror and -DNDEBUG
boost::serialization should be outside btas::
related to #32. when axpy is called with complex arrays and double alpha, it converts alpha to complex and use BLAS.
related to #32. The same for btas::scal
boost::serialization should be outside btas::
Revert "resize does not reallocate when resizing to smaller sizes"

This reverts commit e3cd215e1c4421d026e8b14bfae86570ee563774.
instead of modifying varray, defaulting to std::vector
Merge pull request #38 from BTAS/resize

storage default to std::vector and misc fixes
Merge branch 'master' of https://github.com/BTAS/BTAS
boost::serialization for std::array and btas::varray