Massively simplify handling of corefile's saved memory size options
* Save the options as the first core entry immediately following
the core header magic word, not as trailer words.
* Rename runtime_options to 'memsize_options' so not to imply that
it preserves any other runtime options.
* Don't malloc a structure of 2 words, don't make it global.
* Kill two single-use functions, use fewer goto statements,
and fix file descriptor leak in search_for_embedded_core().
* Fix bug in S-L-A-D from an image started with an executable core that was
specified as a "--core" command-line argument. Such usage should treat the
core in every respect as if it were *not* an embedded core, so that changing
the memory size options works (among other things). However, saving from
that image would incorrectly use the memory sizes options originally saved
in the executable core because search_for_embedded_core() always altered
the global options despite not using them in the "--core" mode.
This strange behavior seemed clearly to be an accident, not by design.