[2980] Added the LibraryManagerCollection object

This manages LibraryManagers created for the libraries loaded.
[2980] Abstracted names of test libraries into a common header file
[2980] Rationalised the tests a but by extracting a common class
[2980] Checkpoint - HooksManager class partially working
[2980] Added HooksManager load/unload libraries methods
[2980] Added conditional initialization.
[2980] Added pre-callout and post-callout function registration
[2980] Miscellaneous changes

* Catch user-library-generated exceptions.
* Remove hook registration function (no longer needed with a singleton
  ServerHooks object.
* Miscellaneous documentation changes.
[2980] Added missing LibraryManagerCollection files to the repository
[2980] Get rid of RTLD_DEEPBIND
[2980] Take account of differences in DLL naming

On Ubuntu, DLLs have the suffix .so: on OSX, the suffix is .dylib
[2980] Add Component Developer documentation
[2980] Merge branch 'trac2980' of ssh://git.bind10.isc.org/var/bind10/git/bind10 into trac2980
[2980] Changes as a result for the first part of the review
[2980] Updated as a result of the second part of the review.
[2980] Various changes as a result of review
[2980] Final set of changes resulting from the first review
[2980] Made LibraryHandle copy constructor and assignment operator private.

This reduces the risk of someone taking a copy and being left with
a "dangling pointer" to a callout manager.
[2980] Changes in preparation for merge

Absence of "libdl" on BSD systems required an addition to configure.ac
to check its presence.  Problems with converting "pointer to object"
to "pointer to void*" via reinterpret_cast on Solaris required an
extension to the Pointer_converter class.
[2980] Build test libraries dynamically even if static linking is requested

The hooks system can only load shared libraries, even if BIND 10 is
linked statically.