Use make-text-button instead of insert-button.

Also use set-buffer instead of switch-to-buffer & with-current-buffer
as docs for switch-to-buffer say.