Use decoded names

Rather than just using the nameString of a symbol we now use the
decoded names. E.g. euqals is now '==' instead of '$eq$eq'

Fixes #1001723
Make sure a file exists before searching the parse tree

Since everything is concurrent we can easily find ourselves in a
situation where the occurrence collector is used on a file that
doesn't exist anymore, so now we make sure that files exist
before trying to traverse the parse-tree.

Fix for #57 on Github
Merge pull request #52 from mads379/1001723-use-decoded-names

Use decoded names
Merge pull request #59 from mads379/github-57-check-that-file-exists

Make sure a file exists before searching the parse tree
Fixing the OccurrenceCollectorTest for Scala 2.11.x

There is a slight difference between Scala 2.10.x and 2.11.x.

In Scala 2.11.x calls that are placed inside of constructors
that are generated by the compiler have NoPosition as their pos.
(It's a bit weird that they had a position in Scala 2.10.x
anyway since they are synthetic.)

This takes care of this edge case by being more specific about
what kind of occurrence we expect in the test; this should be
reasonbale since we don’t know how to deal with
synthetic symbols yet anyway.
Merge pull request #58 from mads379/fix-test-for-2.11

Fixing the OccurrenceCollectorTest for Scala 2.11.x
Search jobs can be canceled and show progress

The search jobs now show their progress by means of a
total percentage of the occurrences that have to be type-checked and
show which file is being type-checked right now.

Jobs can now also be stopped.

Fixes #1001737
Merge pull request #53 from mads379/1001737-show-progress-on-searches

Search jobs can be canceled and show progress
Always prefer getter names when applicaple

Fixes the build for 2.11 and is more correct.
Merge pull request #60 from mads379/prefer-getter-name

Always prefer getter names when applicaple
Can now find sub-types of a given type

Extended the SearchPresentationCompiler, Finder, and SourceIndexer
so they're now able to find sub-types of a given type.

Also re-wrote some of the earlier test classes so they now reflect
the newer ways of writing tests; this is one of the reasons this
commit is so large. Sorry.

Fixes #1001755 #1001725
Merge pull request #61 from mads379/1001755-find-subclasses

1001755 find subclasses
# This is a combination of 8 commits.
# The first commit's message is:
Step 1: Create a blank view and register it

# This is the 2nd commit message:

Step 2: Add context menu and key-combo

# This is the 3rd commit message:

WIP: UI Code

# This is the 4th commit message:

Step 3: Show view when pressing key-combo

# This is the 5th commit message:

WIP: Show sub-types in the view

# This is the 6th commit message:

Bind dblclick/enter to jump to declaration

# This is the 7th commit message:

Simplified symbolAt

# This is the 8th commit message:

Fairly large refactoring
UI Code for type-hierarchy view