Add weak symbols for __strtol_internal (etc)

Seems certain binaries (such as those compiled on centos) contains inlined
references to __strtol_internal (which in turn seems like a bug to me).

Copied the weak defs from the musl version of the file. Other option
is to modify the musl version to deal with OSv file struct and use that instead.

Refs #339

Signed-off-by: Calle Wilund <calle@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
Run DT_INIT/DT_FINI iff present in libs.

While the previous comment about "modern" gcc not generating DT_INIT/FINI
sections any longer is most likely quite true, certain older gcc, such as
those used by CentOS build of OpenJDK or Oracle build of Not-so-open-JDK
does in fact do so.

Refs #339

Signed-off-by: Calle Wilund <calle@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>