Added __eq__ and __hash__ to Op Class and deleted them in function with props attribute.
Fixed hash and eq method for Op function.
Added other argument to eq.
Fixed __eq__ method for Op class.
Added str method to Op class.
Fixed str method in Op class.
Auto generate Op.{hash,eq,str}.
Minified linalg ops to fit this PR and changed str to print all the properties.
Added a check that doesn't add the '{}' part when __props__ is an empty tuple in __str__.
Fixed small mistakes in code.
Merge pull request #2018 from Tanjay94/Op

Auto generate Op.{hash,eq,str}