HPCC-8631 Added library for dynamic apr access

Dynamic loading of apr is done by including the dynapr lib
and then creating an object or using newAprObject() followed
by a call to init().

This is designed to be instantiated and then used allowing for
init to prepare the object for use and the deconstructor to
clean up after the object.

Changed AprShared and ApuShared from deriving SharedObject
to using it.

Removed usage of get that is not needed.

Added DYNAPR_API to Apr class defn.

Signed-off-by: Philip Schwartz <philip.schwartz@lexisnexis.com>