libgeda: Correct ld version number.

Closes-bug: lp-1081799
libgeda: Fix errors in hu.po

Closes-bug: lp-1081594

(imported from commit 4cfce9a6cda682f8093a261a6bf65bf35e6799f7)
Various manpage fixes

 * Fix typo in gxyrs manpage
 * Fix whatis entry in gmk_sym manpage
 * Fix hyphens

Closes-bug: lp-1081303

(imported from commit 2db16cd536b95ffb98721946aa36984f8a41d896)
gschem: Update copyright date in usage & 'About' dialog.
Update NEWS.
Update translations.
Update version numbers to 1.8.1.
libgeda: Refuse to connect nets inside symbols with other nets.

A libgeda crash bug was caused by the pathological use case of putting
nets inside symbols.  Since the file format does not specifically
forbid this, libgeda must cope with this gracefully.  Specifically,
o_net_consolidate() was causing a crash when attempting to merge a net
inside a symbol and a normal net.  The underlying cause was found to
be that the connection tracking system did not cope properly with
encountering connectable objects other than pins inside symbols.
Merely fixing the net consolidation algorithm exposed other bugs (for
example, nets inside symbols should NOT rubberband!)

This patch adds logic to s_conn_update_line_object() as follows:

1) If two objects are both not inside symbols, they may connect.

2) If two objects are inside the same complex, they may connect.

3) If an object is inside a complex, it must be a pin to connect to
   objects outside the complex.

Closes-bug: lp-994361

(imported from commit c18a0826fcd43dc8471f98e3a092d3144fcb6918)
gschem: Fix typo in comment
gschem: Update documentation for tree_row_activated

Commit 69f7faf introduced a behavior change in tree_row_activated.
This patch updates the associated Doxygen documentation.
gschem: Fix inconsistent double-click behavior in component selector

Double-clicking a symbol in the "Libraries" tab of the component selector
closes the dialog (introduced by commit 69f7faf).  This patch makes this
behavior also available in the "In Use" tab.
libgeda: Use bounding box accessor in o_pin_update_whichend
Pass TOPLEVEL object to shortest_distance functions

The shortest distance between a complex or text object and a point
depends on the object's bounding box which in turn depends on the
rendered_text_bounds_* and show_hidden_text fields of the TOPLEVEL
context.  Therefore, a TOPLEVEL context is logically required to
obtain a useful shortest distance.
libgeda: Use bounding box accessor in shortest_distance functions
gschem: Use bounding box accessor
gschem: Just invalidate bounds of moved complex object

There is no need to recalculate the bounding box immediately;
world_get_single_object_bounds will do that when required.
Replace flag w_bounds_valid with TOPLEVEL reference

The bounding box stored with an object depends on the TOPLEVEL
context passed to the first call to world_get_single_object_bounds.
Calling this function with another TOPLEVEL object returns the stored
bounding box which may not be valid for that context.

This commit replaces the boolean validity flag with a reference to
the actual TOPLEVEL context for which the bounding box was calculated.
world_get_single_object_bounds checks if this matches the requested
TOPLEVEL context, and if not, recalculates the bounding box.
Don't recalculate bounding box on object updates

Since the bounding box of an object is not read directly any more,
updating it can be deferred until it is actually necessary.
libgeda: Remove recalc functions

- Object bounding boxes are now calculated on-demand by
  world_get_single_object_bounds,
- other functions are discouraged to use the recalc functions directly,
- keeping them around adds extra complexity,
so we might as well remove them.
libgeda: Fix typo in o_pin_update_whichend

Example symbol reproducing the bug:
v 20020825
P 305 0 305 100 1
P 305 200 305 300 1