While I appreciate being able to step off the boat and wander up to the marina's shower facility I'm much more of an anchor or mooring kind of chap so we have the same quandry.
The instant gas type seems to be the logical way to go but I'll need to check out the insurance situation as previously mentioned. Maybe there are ventilation systems that make it all safe.
While we have, and often use, a solar shower we also have a temporary shower that works a charm. You can make one up for yourself or camping stores have variations on the theme. What we have is a pump that plugs into a 12v outlet with a switch on the line and of course a shower head. Boil a kettle of water (actually only 3/4 will do) , pour it into a bucket, add cold to taste and awaaaaaaaaaay we go. Navy shower of course but the bucket gives you a known quantity of water so you can easily monitor usage and if out of sight of others the whole thing can be used on deck.
Regarding waste water, try and not use your bilges. Even with a strainer removing 'ahem' foreign objects soapy water in the bilges will smell. You need a sump in the head with it's own bilge pump. It's crucial that you dry it out completely after use.
I have found that cruising sailors who have enough solar or wind generation capability don't like heat exchangers. Without the need to run the engine an hour or so a day to charge batteries, running simply to heat water is considered a pain. This purely from random sampling.
“Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life.” Terry Pratchett