There's a really simple solution for footnotes that nobody implements
Your "endnotes" are a link; something like <a href="notes.xml#note1">1</a> in the source file. By adding a "rel" attribute with a particular value (e.g., <a rel="footnote" href="notes.xml#note1">1</a>) the reader can tell it's supposed to be a footnote. Rather than loading the page when you click the link, it could extract just the target element ("note1" -- so you can put all the footnotes on one file) and either display it on the bottom of the page when the referring document is on-screen (which can be slightly tricky, but is possible...but isn't as good as the next option anyway, IMO) or display it in a popup when the link is selected (have to have some way to select it, of course, but the font-size-changing behavior of the up/down buttons is more annoying than useful: could profitably use that for prev/next footnote, etc.). The "notes.xml" page in the spine section of the .opf file should have the linear="no" attribute set, and then the reader should skip over it rather than displaying it when you page through the book.