Handle unicode literals properly in matrices

Fixes #7604
Added a few rules for imageset simplification
remove positive kernel check from powdenest

It is not always true that (p**x)**y = p**(x*y) if p is positive.
It depends on the value of x. e.g.
>>> e = 3 + I
>>> r = Rational(1, 3)
>>> b = .02
>>> ((b**e).n()**r).n(2)
0.014 + 0.014*I
>>> (b**(e*r)).n(2)
0.0053 - 0.019*I
Fixed value for `coth(0)`

coth(0) = zoo (Complex Infinity)
For reference: http://www.wolframalpha.com/input/?i=coth%280%29
Merge pull request #7634 from sushant-hiray/coth-fix

Fixed value for `coth(0)`
Implement __ne__() by calling __eq__()

The __ne__() operator should return "not __eq__()". Alternatively, one can copy
& paste the algorithm from __eq__() and negate the answer right before each
return. But anything else means there is a potential bug.
Merge pull request #7636 from smichr/pow

remove positive kernel handling
Update piecewise.py

Corrected a typo.
Merge pull request #7647 from coder006/typo

Correct a typo in piecewise.py
Merge pull request #7645 from certik/ne

Implement __ne__() by calling __eq__()
Added Ambar Mehrotra to the AUTHORS/aboutus. Welcome to SymPy
Merge pull request #7625 from hargup/imageset_simplification

Added a few rules for imageset simplification
Incomplete doc in deutils

A line is complete in docs in _desolve in deutils. It can be more than one thing possible there. I need suggestions to complete this sentence.
Merge pull request #7613 from clsn/str_unicode

Handle unicode literals properly in matrices
Add Mark Shoulson to the AUTHORS/aboutus. Welcome to SymPy
Completed the doc sentence of _desolve in deutils.py

The sentence, This is useful when the function, was incomplete earlier. It is now replaced with `This is useful when the expression has more than one function in it.`
Merge pull request #7657 from KDMOE/typo_deutils_desolve

Incomplete doc in deutils [skip ci]
is_comparable is False if AppliedUndef is present
add can_evalf method

The is_number property does not strictly mean that something will
evaluate to a number with evalf since it might contain undefined
functions with numerical arguments. If can_evalf is True it means
that the object can be computed *with precision* to a number (unless
the strict flag is False).
simplify Integral.free_symbols calc; clarify test