Thrust equivalent to std::complex

I've put all the code inside thrust/detail/complex. I've also create the unittests and documentation.

I've ported FreeBSDs c99 complex implementation, as it seems to be the highest quality available.
All the functions, except for pow, are accurate to within a few ULPs. 

Complex atan() and atanh() require C++11 due to the lack of real atanh() in previous versions.

I've tested with g++ and clang++ but I didn't have the opportunity to try with msvc as I don't have access to it.