RFC: Macro reform

[Rendered view](https://github.com/kmcallister/rfcs/blob/macro-reform/text/0000-macro-reform.md)
This was discussed here: https://github.com/rust-lang/rfcs/pull/453#issuecomment-62796672 We made a list of some things that this breaks (but by making them behave in strange ways silently, rather than causing an error message). 

Worse, I doubt this buys us anything: I do not know of any macro system that has taken advantage of unspecified macro expansion order to achieve a more powerful macro name resolution mechanism, and the Rust non-macro-name resolver is particularly tricky and powerful (I remember some of the discussions!). I think having two resolvers that try to behave the same, but have subtle differences in their behavior is worse than having the macro resolver behave in a predictable but somewhat limited way, and making the macro resolver work like the non-macro resolver is too different from anything any language has achieved before, even if it is possible.