I'm achieving exactly this with my local email client. Okay, it's not a fancy web application, but exactly that's making it so valuable for me.
When I open my email client, it shows all "old" mail to me, and allows me to write new emails. It only fetches new emails when I explicitly tell it to do that.
I'm using Mutt, but I think this should work with any other email client such as Thunderbird. All you have to do is disabling the auto-fetching of new emails. And if you still feel the urge to hit the "Get Mail" button, then just configure it away from the toolbar.
tl;dr: It's all there - you just need a tiny configuration change in your email client.
Perfect example of something that's been available for ages but people somehow think they need a shiny web app (SaaS with a monthly subscription, of course) to do.
When I open my email client, it shows all "old" mail to me, and allows me to write new emails. It only fetches new emails when I explicitly tell it to do that.
I'm using Mutt, but I think this should work with any other email client such as Thunderbird. All you have to do is disabling the auto-fetching of new emails. And if you still feel the urge to hit the "Get Mail" button, then just configure it away from the toolbar.
tl;dr: It's all there - you just need a tiny configuration change in your email client.