cleanup and correct copying of negative numbers from GMP to SBCL
- this is for functions where we cannot correctly estimate and preallocate the result bignum
- add some more tests for this case