Topic/enhancements

I'm working on a branch that takes advantage of these enhancements, but they are otherwise separate from the logic I'm adding. I'm raising this PR in isolation to avoid my feature PR from getting to big, and because this part is already tested.

The paginator rewrite and API call refactor should be pretty self explanatory.

The purpose of taking a load callback for `reloadContainerOnClick` is to select and activate all popover dom elements *after* the new markup loads.
Somewhat controversially, I have broken these PRs up to separate the structural changes needed to support the feature, and the feature itself.