> tab-complete, history
Those would be handled by your shell, not your terminal, right?
> multiplexing
If you have a good window manager, then there is no reason to have a bespoke multiplexing implementation in your terminal. I can stack my terminals and _any other window I want_ with tabs and switch between them using the same hotkeys/interface that I use for my whole system, rather than each app implementing their own tabs.