Ask Idris for which functions call which other ones

This also has a significant update to the tree view, causing it to use Emacs buttons. This simplifies the code significantly, and allows tree nodes to have active elements. For example, it is possible to right-click types in error messages.

Relies on https://github.com/idris-lang/Idris-dev/pull/1070