Basic support for building the MPFR
Add more mentions to the MPFR on the build system and documentation
Add mpc to the build system and basic documentation
Add MPC and MPFR to Base

Both MPC and MPFR are building correctly and running all tests (the
same I had when they were a different package).
Currently, the biggest issue is that `make check` for MPFR and MPC
run all their tests, considerably lengthening the build process.
Change BigInt to use a precise mpz_struct

As discussed in #2814.
Install libmpfr-dev and libmpc-dev packages explicitly
Update MPFRFloat to use a precise sized mpfr_struct

As discussed in #2814. The function `sum` is disabled currently
(so the default one is used as a fallback), as it needs direct
pointer access to each of the members of the array.
Change default precision of MPFRFloat to 256 bits

As discussed in #2814
Rename precision-related functions and add them to Float32 and Float64

Now get_precision is defined for all T <: FloatingPoint, and returns
24 for Float32 and 53 for Float64 (the effective number of bits in the
mantissa, taking in account the implicit leading bit.

get_bigfloat_precision and set_bigfloat_precision are used to get and set
the defaults for all BigFloats, and the BigComplex case is analogous.
Update MPCComplex to use a precise mpc_struct

As using two mpfr_structs doesn't work, I decided to expand them
directly into two groups of four elements (two longs, an int and
a pointer). They could be useful if we ever need to implement
efficient in-place algorithms, as they can be directly extracted
and manipulated as MPFRFloats.
Flexibilize the ROUNDING_MODE for MPCComplex numbers
Convert methods for other common complex types available

These methods were written in order to avoid having to use real()
or imag(), as they create a new MPFRFloat object.
Use more efficient addition/subtraction/multiplication for ints/uints

This also is the first function which tries to take in account
that Clong is not always Int.
Scrap mpz_struct, as suggested by Jeff
Fix ccall type issues in bigint.jl, according to #2901

Now it uses Culong and Clong when needed.
Inline MPFRFloat structure and refactor it into a non-parametric type
Fix ccall type signatures in mpfr.jl, according to #2901
Fix the BigInt basic arithmetic issues
Implement efficient basic arithmetic for signed/unsigned/float/BigInt and MPFRFloat

The four basic operations are now implemented using the MPFR functions
instead of promotion to MPFRFloat.
Add hypot function