Improvements to NSPLIT-LIST

- Rewrote NSPLIT-LIST using the code from SPLIT-LIST. This time, the
  assembly size reduction is about 31%.

- Changed the FROM-END argument to an optional parameter. Mostly this is
  just to shut SBCL up, but it has a good reason:
  (SPLIT-LIST MY-LIST :FROM-END T) does not do what it looks like.