Fix -cons*

Seems like nobody used this ever, because it was broken for >3 arguments :P

I've just tried to use it to inplace prepend stuff in plists: `(setcdr list (-cons* ... (car list) (cdr list)))` then `(setcar list newcar)` but it broke on me. So here's the patch.