base/printf.jl: use `a in b` syntax instead of `in(a,b)` syntax.
base/grisu.jl: use zero-dimensional arrays for NEG, LEN & POINT.

Since zero-dimensional arrays always have size 1, this might avoid
some bounds checks that otherwise have to be done.
base/gmp.jl: some style and performance tweaks.
printf: add support for integer decoding of BigInts [#5756].

This primarily adds support for things like

    @printf("%d", big(3)^123)
    @printf("%x", big(3)^123)
    @printf("%o", big(3)^123)
    @printf("%f", big(3)^123)

Further work is needed to support "%e" format and BigFloats.

This fixes a few bugs for ndigits and ndigits0z for BigInts too.
Previously, ndigits(big(0)) == 0, whereas it should be 1. There
was also a bug in Base.ndigits0z(n::BigInt, b::Int) – it ignored
the base you gave it and always gave you the number of base 10
digits of your BigInt. Now it respects the base.
Merge branch 'master' of github.com:JuliaLang/julia