delete
fixes, new error types, cleanup
passing tests