hw: initialize Platform_thread::_main_thread right

Ref #756
hw & arm: use sp to hand out main UTCB pointer

Also don't hand out UTCB pointers to cores main thread and to threads
other than main threads.

Ref #756
hw: use generic crt0.s for progs other than core

Use '__initial_sp' instead of '_main_utcb' to receive a main threads
UTCB pointer outside core.

Ref #756
base: provide BSS boundary marks in genode.ld

This enables us to use the generic linker script for
base-hw also.

Ref #756
hw: use generic genode.ld

Ref #756
crt0 cleanup

- use 'crt0.s' of the 'base' repository for 'base-linux'
- move the read-only '__dso_handle' definition into the '.text' section
- move the '__initial_sp' definition into the '.bss' section
- remove the '_main_utcb' definition

Part of #756.