Implement equivalence predicates for Scheme base library (equality)

- eqv?
- eq?
- equal?
Fix bug with pattern matching of a do expression
Fix bugs with pattern matching of define and define-values expressions
Fix bug with letrec and letrec-values body construction
Implement boolean procedures for Scheme base library (boolean)

- not
- boolean?
- boolean=?
Implement pair and list procedures for Scheme base library (list)

- pair?
- cons
- car
- cdr
- caar
- cadr
- cdar
- cddr
- null?
- list?
- make-list
- list
- length
- append
- reverse
- list-tail
- memq
- memv
- member
- assq
- assv
- assoc
- list-copy
Implement change request for Scheme string implementation

Change the implementation of a string from an Erlang UTF-8 encoded
binary to an Erlang tuple of Unicode characters.  The Scheme R7RS
specification does not require constant access to a string's
characters.  Nevertheless, constant access helps simplify the
implementation of the Scheme string procedures.
Implement control feature procedures for Scheme base library (control)

- procedure?
- apply
- map
- string-map
- vector-map
- for-each
- string-for-each
- vector-for-each
- call-with-current-continuation (a.k.a. call/cc)
- values
- call-with-values
- dynamic-wind
Implement exception procedures for Scheme base library (exception)

- with-exception-handler
- raise
- raise-continuable
- error
- error-object?
- error-object-message
- error-object-irritants
- read-error?
- file-error?
General purpose utilities for utf8, lists, tuples, and binaries.
Implement symbol procedures for Scheme base library (symbol)

- symbol?
- symbol=?
- symbol->string
- string->symbol
Implement character procedures for Scheme base library (char)

- char?
- char=?
- char<?
- char>?
- char<=?
- char>=?
- char->integer
- integer->char
Implement string procedures for Scheme base library (string)

- string?
- make-string
- string
- string-length
- string-ref
- string=?
- string<?
- string>?
- string<=?
- string>=?
- substring
- string-append
- string->list
- list->string
- string->copy
Implement vector procedures for Scheme base library (vector)

- vector?
- make-vector
- vector
- vector-length
- vector-ref
- vector->list
- list->vector
- vector->copy
- vector-append
Implement bytevector procedures for Scheme base library (bytevector)

- bytevector?
- make-bytevector
- bytevector
- bytevector-length
- bytevector-u8-ref
- bytevector->copy
- bytevector-append
- utf8->string
- string->utf8
Refresh edocs
Implement i/o procedures for Scheme base library (io)

- call-with-port
- input-port?
- output-port?
- textual-port?
- binary-port?
- port?
- input-port-open?
- output-port-open?
- current-input-port
- current-output-port
- current-error-port
- close-port
- close-input-port
- close-output-port
- open-input-string
- open-output-string
- get-output-string
- open-input-bytevector
- open-output-bytevector
- get-output-bytevector
- read-char
- peek-char
- read-line
- eof-object?
- eof-object
- char-ready?
- read-string
- read-u8
- peek-u8
- u8-ready?
- read-bytevector
- newline
- write-char
- write-string
- write-u8
- write-bytevector
- flush-output-port

NOTE: Only primitives used to implement these procedures have
undergone testing.
Refresh edocs