sbtTransformHash -> e:sbtTransformHash
Test for missing dependencies of macro arguments

Add a test which shows the problem of not properly capturing dependencies
of macro arguments.
Record dependencies on macro arguments

Macros take arguments as trees and return some other trees; both of
them have dependencies but we see trees only after expansion and
recorded only those dependencies.

This commit solves this problem by looking into the attachments of the
trees that are supposed to contain originals of macro expansions and
recording dependencies of the macro before its expansion.
Improve unit testing compiler

It was not possible to make `ScalaCompilerForUnitTesting` compile several
files in different runs, which means that it was not possible to compile
and use a macro in a test case, since macros cannot be used in the same
compilation run that defines them.

This commit allows a test case to provide multiple grouped snippets of
code that will be compiled in separate runs.

For instance :
    List(Map(<snippet A>, <snippet B>), Map(<snippet C>))

Here, <snippet A> and <snippet B> will be compiled together, and then
<snippet C> will be compiled, and will be able to use symbols defined
in <snippet A> or <snippet B>.
Unit test for dependency extraction from macro applications

Add a unit test which checks whether we capture dependencies introduced
by arguments to macros. Those dependencies are special because macros
get expanded during type checking and arguments to macros are not visible
during regular tree walk.
Add scripted test for nested macros

Add test analogous to source-dependencies/macro-arg-dep
but check if dependencies of nested macro applications are handled
properly. Nested macro applications are tricky because we have to look
into original (before macro expansion) trees recursively. This test verifies
that.
fixes #1196
Merge pull request #1163 from Duhemm/macro-arg-deps

Record dependencies on macro arguments
Removes Changes entry on AutoPlugin and AddSettings
Merge pull request #1192 from dansanduleac/i1191

Rename sbtTransformHash -> e:sbtTransformHash
CustomPomParser compatibility with 0.13.1. #1191 #1192
Merge pull request #1205 from eed3si9n/topic/pomparser

CustomPomParser compatibility with 0.13.1. #1191 #1192
Merge pull request #1197 from sandreev/t_1196_empty_tests

fixes #1196
Merge pull request #1203 from eed3si9n/topic/requiredAutoPlugin

Unifies AutoPlugin and RootPlugin
Unifies AutoPlugin and AutoImport. Fixes #1188

* AutoImport trait is subsumed by def autoImport method under
AutoPlugin class.
* When def autoImport is overridden by a lazy val or a val, *.sbt
automatically imports autoImport._.