procedural.scm: Set version to 1.2.-1.
An overhaul, with many goodies in-between.

After a surge of motivation and creativity over several days, many
changes were made at once without commits in between:

`bytestructure-descriptor-size' now optionally takes bytevector and
offset arguments before the descriptor argument, to request the size
of a "dynamic-sized" bytestructure be calculated.

`bytestructure' now takes any description and not just a descriptor;
for the initialization values it does not take a statically parsed
s-expression and instead a list; old code can simply quote the
s-expression it used.  Since it doesn't parse its argument
syntactically anymore, it was made to be a procedure.

`bytestructure*' has been removed; in its place there is the procedure
`bytestructure-fill!' which takes the same arguments, except that for
the last one, the same change as for `bytestructure' applies.

`bytestructure-ref-helper' and `bytestructure-ref-helper*' now take
the same arguments as `bytestructure-ref' and `bytestructure-ref*',
however `bytestructure-ref-helper*' can be given #f for the bytevector
argument if it's known to be irrelevant.

The `bytevector-ref-helper' and `bytevector-constructor-helper' of a
descriptor type now also take and return a bytevector, so that
bytestructures can consist of multiple underlying bytevectors; they
now also receive a so-far offset argument and are expected to return a
new offset based on that one, so for example when they return a
different bytevector they can also reset the offset to zero.

Refined and documented the behavior for when during a referencing or
setting operation, an index-list does not exhaust all nested
descriptors.

Compound descriptor types can now also provide ref and set procedures
to override the behavior for when an index-list does not exhaust all
nested descriptors.

Added `bs:pointer', which was the motivation for the overhaul.

Added native-sized numeric types: short, unsigned-short, int,
unsigned-int, long, unsigned-long, size_t, ssize_t, and ptrdiff_t.

Added numeric types whose endianness is explicit: int16le, int16be,
uint16le, uint16be, etc.

Changed "bsd:" prefix to "bs:" for bytestructure-descriptor-types.

Changed the structure of test.scm so it's divided into many top-level
definitions, and more ordered.  Made some miscellaneous changes too.

Internal naming changes:
* Changed many misleading `foo-descriptor' names to just `foo'.
* Renamed all `foo' record-constructors to `make-foo'.
* Renamed many `descriptor' named variables to more correct names.
* Renamed some `foo*' procedures to `%foo' when for internal use.
* Obsessively changed all `foo-fn' identifiers to `foo-proc'.

Documentation improvements:
* Clarify the confusion between descriptors and their contents.
* Use the term "procedure" instead of "function."
* Miscellaneous fixes and refinements.

Other minor changes:
* Removed assertions.
* Removed unused compound? field from descriptor types.
* Added ^L section-separators to procedural.scm.
* Things that I forgot about and have overseen in the diff.
Change version to 1.2.0.-1.

This is to tell myself "stop making huge amounts of chaotic changes
and bring out a stable, usable state at last."