Generalize functionality provided by ScalaCompilerForUnitTesting

Introduce extractUsedNamesFromSrc overload which takes two arguments:

  1. First argument contains src snippet with definitions
     that can be used in the second snippet
  2. Second argument contains src snippet from which used
     names will be extracted

In order to implement this I had to refactor compileSrc method to
handle multiple src snippets.
Log extracted names for each compilation unit.

It was a simple omission that we didn't log this crucial piece of
information before.
Factor out common names in ExtractUsedNamesTest.

That test would contain all expected names. Some of them are standard
names that are always extracted. We are factoring it out to a separate
variable so the distinction is a little bit more clear.
Add pending test case for type alias bug (issue #6).

Add a test case which shows that we do not detect properly changes to type
aliases.
Fix used name extraction from types.

Due to odd representation of TypeTrees we didn't handle name extraction
properly for TypeTrees. By odd representation I mean:

  * TypeTree.hasSymbol always returns false even when TypeTree.symbol
    returns a symbol
  * The original tree from which given TypeTree was derived is stored
    in TypeTree.original but Tree.forech doesn't walk into original
    tree so we missed it

I rewrote tree walking algorithm to walk into TypeTree.original.

Fixes #6 (the type-alias bug).