Add method "diag" into builtin which is analog to numpy's builtin method [diag].  Associated tests added.
Merge github.com:spartan-array/spartan into origin

Conflicts:
	spartan/expr/builtins.py
Merge branch 'master' of https://github.com/fegin/spartan into newaxis
Newaxis Done, now on dimension things
Enhancement: expr.newaxis
Bug fixes
Bug fixes
Bug fixes
Sync with numpy's slice operation
Modify test to verify slicing with [-1]
.
Merge pull request #205 from MaggieQi/master

fix edge cost exceeds int range error
#208 Add logical operations to Expr
Merge pull request #209 from rgardner/add-and-or-operators

#208 Add logical operations to Expr
Minor modifications
Merge pull request #207 from GabrielWen/newaxis

Enhancement: Newaxis
Fix bugs of compute_shape in dot expr
Adding support to column fetch
Fix bugs on vector slicing
Add new feature and test cases