Added source and target states in CrawlOverview

Source and target states can now be shown in the CrawlOverview.
The state summary table displays a link next to the fan-in/-out
number to show all source/target states (if any).

The states are clickable, so this makes it especially easier to
diff against incoming states.

I modified some of the core classes: one typo and added a method
to get incoming states (in addition to the already existing outgoing
states).

Note: the states are shown ordered by name.
Buttons instead of anchors

The "Show states" and "Reload diff" links are now buttons.
Added "Swap diff" button

As the name of the button says, when clicked, swaps the two files
being diff'd.
Better sorting for fan-in/out & removed swap

- States for the fan-in/out overviews are now sorted by their id,
  fixing the problem that `Collections.sort()` uses total ordering.
- Also removed diff swap function. Not very useful and can lead to
  confusing diffs when going to other states after swapping.
Merge pull request #420 from ivan-p92/overview-diff-viewer

Source / target states in CrawlOverview