Create the solveset module

The commit implements the solveset module in an attempt to
fix the problems with the current solve function. The commit
roughly follows my GSoC proposal
https://github.com/sympy/sympy/wiki/GSoC-2014-Application-Harsh-Gupta:-Solvers
and more details can be acquired through the discussion on the github pull
request https://github.com/sympy/sympy/pull/7523
correct RootOf(...) in S.Reals
Add imageset.intersect(S.Reals) method
Merge pull request #7523 from hargup/solver_refactor

Rewriting the Univariate Solver