added optimize/debug declarations
added Mikael Möre's u8 strings
relocated some functions
ported define-macro to syntax-rules