scheme-api: Correct typo in docs.

Closes-bug: lp-1198663
libgeda: Fix checks for circular hierarchy dependencies.

Gschem gives me the message "Hierarchy contains a circular dependency."
This is due to a bug in libgeda.  The function s_slib_search_dirs()
returns the first directory from the search path where a file is found
that includes the name of the searched file in its filename.  I was
trying to descend the hierarchy into a file called "biashk.sch".  There
is a file "ibiashk.sch" in a different directory earlier in the search
path, with the additional letter 'i' in the name. That directory is
returned.

Later, s_hierarchy_down_schematic_single() is convinced that the file
was found, but gets a found->pid==0, i.e., the same as the toplevel pid,
and thus thinks it's circular.

Somewhere in between is probably a failed open() that was not properly
checked.

  (stephan)blaulicht:~/solo/eda/cospi$ cat gafrc
  (component-library "../cecederena")
  (component-library "../irena")
  (component-library "../lib")
  (component-library ".")
  (source-library (getenv "PWD"))
  (source-library "../cecederena")
  (source-library "../irena")
  (source-library "../lib")
  (stephan)blaulicht:~/solo/eda/cospi$ ls -1 ../*/*biashk.sch*
  ../cecederena/biashk.sch
  ../cecederena/biashk.sch~
  ../irena/ibiashk.sch

gnetlist failed silently.

This patch fixes the problem for me.

Reviewed-by: Peter TB Brett <peter@peter-b.co.uk>
scheme-api: Correct some C documentation comments.
gschem: Fix return value from do_popup()
libgeda: Minor changes to doxygen generation.
libgeda: Regenerate .dox file with "doxgen -u"
libgeda: Add edaconfig.c to translation inputs.
gschem: First-class actions.
gschem: Dispose of redundant "misc" commands.
gschem: Remove redundant "page-new" command.

It does exactly the same as "file-new".  It was a toss-up which one to
keep, but "file-new" won.
[WIP] gschem: Wrap built-in commands with new actions system.
scheme-api: Add support for C closures.

Some Guile APIs require a procedure, but do not provide the ability to
pass a C function + user data pair (for example, the hooks API).

This patch adds the edascm_c_make_closure() function, which takes a C
function and data pointer and returns a Guile procedure that closes
around them and accepts any number of arguments.
scheme-api: Add EdascmHookProxy class.

It's sometimes useful to be able to hook a GObject up to receive
signals whenever a Guile hook is run.  An EdascmHookProxy object makes
this easier by taking care of all of the interfacing with Guile.
Other GObject instances can just connect to EdascmHookProxy's "run"
signal and receive a callback whenever the hook fires.

The "run" signal requires a callback of the form:

  void user_function (EdascmHookProxy *proxy, SCM args,
                      gpointer user_data);

where args contains the argument list originally passed to (run-hook).
gschem: Create hook proxies for named hooks.
[WIP] gschem: Add action-property-hook.

Add a new hook that's called when any action's properties change.

FIXME Documentation
gschem: New hotkeys window.

Includes icons and translated action names, and updates when action
properties are modified.  It would probably be more useful for it to
update when keybindings are modified, but that's the next step!
[WIP] gschem: Add bind-keys-hook.

Add a hook that is run whenever a key sequence is rebound.

FIXME documentation
[WIP] gschem: Let keymaps have a label.

FIXME documentation.
[WIP] libgeda: Remove menu-related code.
[WIP] gschem: Remove menus.