Merge pull request #11 from evaleev/master

Added missing traits indirection for eval_type typedef
- Renamed expression_traits to eval_trait and moved from expression_traits.h to type_traits.h
- Modified tile evaluation type discovery to use non-intrusive eval_trait and intrusive T::eval_type
- Changed is_lazy_tile to use eval_trait
- Removed eval_type from Tensor since it is no longer necessary with the new eval_trait
- Updated unit tests to account for the removal of eval_type from Tensor
Merge pull request #7 from ValeevGroup/master

sync with ValeevGroup:master