I already made the first two parts and if you need, I can also do the third one (match-var).
In order to prove you that I deserve to win this project and that I already start working, here is the range function:
(defun range (L)
(list (apply #'min L) (apply #'max L))
)
I also made: all-length, before, split-if, group, mostn and match.