refactors signature handling in macro engine

Previously actual and reference macro signatures were represented as
tuples of vparamss, rets, and sometimes tparams. Now they are all
abstracted behind MacroImplSig.
untyped macros beta 1

No spec yet, just docs at http://docs.scala-lang.org/overviews/macros/untyped-macros.html.
List of known issues: https://issues.scala-lang.org/secure/IssueNavigator.jspa?mode=hide&requestId=11912.