New fasl version to support ephemerons.
In the process, complete the transition to the STACK_END fasl format.
In the EPHEMERON fasl format, the fasl header has an extra field for
the number of ephemerons stored in the fasl, for which the fasloader
reserves space in ephemeron_array.
The fasdumper chooses between the C_CODE, STACK_END, or EPHEMERON
fasl format for maximum compatibility:
- If there are any ephemerons in the fasl, the fasdumper chooses the
EPHEMERON format. Older microcodes don't know about ephemerons and
thus can't handle such fasls anyway.
- If dumping a band, the fasdumper chooses the STACK_END format,
since the only differences between the C_CODE format and the
STACK_END format matter only for bands. Support for reading the
STACK_END format was added in version 15 of the microcode; any
newly created bands are not likely to be used in older microcodes
than that anyway.
- Otherwise, the fasdumper chooses the C_CODE format, like before.