Based on a patch by Julian Graham <julian@member.fsf.org>
* libguile/values.c, libguile/values.h (scm_c_value_ref): New function.
* doc/ref/api-control.texi (Multiple Values): Add documentation.
* test-suite/standalone/test-scm-values.c: New test program.
* test-suite/standalone/Makefile.am: Add test-scm-values test.
* libguile/values.c (scm_i_extract_values_2): New internal function
that extracts two values from a values object.
* libguile/values.h: Added prototype.
eval.c can use it.
(scm_call_with_values): Removed.
* values.c (values_vtable, scm_values_vtable): Added "scm_" prefix
so that it can be exported.
(scm_call_with_values): Removed.
* values.c, values.h: new files. use a struct to contain multiple
values, similar to the previous Scheme-level implementation.
* Makefile.am: add values.c, values.h, values.x.
* continuations.c (continuation_apply): support R5RS multiple value
continuations.
* init.c: call scm_init_values.
* struct.h: define SCM_SET_STRUCT_PRINTER.