RFC: regularize Dict syntax

This provides `Dict(a=>b, c=>d, ...)` and `Dict{K,V}(a=>b, c=>d, ...)` syntax. Plan is to deprecate other dict syntax.

Fixes #6739.

I think the main controversy is what exactly `=>` should be. Right now it is special syntax for a call to `Base.Pair`. It could be a function, or the name of the pair type (`immutable =>{A,B}`).
Dict comprehension syntax has not been deprecated yet, since we don't have an efficient replacement. It will be `Dict( i => f(x) for i = 1:10 )`. However the old syntax at least has to keep working (with a warning) through 0.4.