Add multiple eshell support

Generalize method used for creating or switching to a multi-term
buffer and apply it to eshell.