Lisp Add Border
(defun add-border (picture)
  (let* ((width (length (first picture)))
         (border (make-string width :initial-element #\*))
         (wrapped (mapcar (lambda (row) (format nil "*~A*" row))
                           (cons border picture))))
    (append wrapped (list (make-string (+ width 2) :initial-element #\*)))))

This builds a new grid with a * border around every side. It adds a full top and bottom row, then wraps each existing row from left and right.