This is my preferred solution.
(defun my-eshell () (interactive) (eshell) (rename-buffer (generate-new-buffer-name "eshell")))