Spite now uses libraris like scheme-vector-2d and such and takes their typed records as arguments. Simplify Spite by removing these dependencies and taking for example raw coordinates as procedure arguments instead of typed records.
Then on the typed libraries what is needed is procedure that procudes the types data as a list. For example instead of spite taking typed rectangle record as argument to (spite-draw-rectangle...) then user should be able to apply the spite procedure to the list of data procuded from the typed record.
This way Spite can stay simple, but still users can use the helper libraries and easily make their own helper libraries.