In order to do it using all the hd44780 pins in a "live" system, I would recommend using some sort of maintenance mode that can interface with some external hardware to properly control the power so the display can be removed and replaced while the power is disabled and the arduino pins used to interface to the lcd are disabled.
If there a need to detach the display "live", then I'd look at using some sort of serial interface.
Perhaps something as simple as an intelligent backpack with an async serial interface.
It could use as little as 3 pins to connect to the main Arduino (power, gnd, serial data)
The processor on the backpack would initialize the display when powered up and then update the lcd display from messages received on the serial link.
If the application needed to know if the display was there or when it was plugged in, then another pin would be needed to indicate the presence of the backpack/lcd-module.