Added mockito jar in classpath of test project
Refactoring - Finder no longer extends Index

Composition here seems to be better than inheritance. A `Finder` is not an
`Indexer`.
Refactoring - Finder no longer extends ProjectFinder

Composition here seems to be better than inheritance.
Refactoring - SourceIndexer no longer extends Index

Composition here seems to be better than inheritance. A `SourceIndexer`
is not an `Index`. Rather, a `SourceIndexer` uses an `Index`, which is
why composition is better in this case.
Merge pull request #42 from dotta/transient/refactoring

Transient/refactoring
Fix for overloaded method symbols

When asking for the type of a position that contains an invocation of
an overloaded method we would sometimes get an overloaded method
symbol from the compiler rather than the symbol of the precise method
that was being invoked.

The problem is that `askTypeAt` only returns the smallest fully attributed
tree that encloses a given position. Consider the following example

 def askOption[A](op: () => A): Option[A] = askOption(op, 10000)
 def askOption[A](op: () => A, timeout: Int): Option[A] = None

 askOption { () =>
   ...
 }

If the position is at the beginning of the `askOption` identifier (the invocation)
then the presentation compiler will only type-check the receiver (the Select node)
and not the arguments and thus will not resolve the overloaded method.

We fix this by asking the compiler to type-check more of the tree using a
RangePosition.

Fixes #38