Custom editor tabs and settings tab

The scheduled publishing feature's designs require a separate settings tab. This adds that tab along with PR #210, which adds functionality to allow users to customise the tab names and the number of tabs.
It feels unsatisfactory calling `set_page_edit_handler` just as a function, rather than it being a class method

e.g BlogPage.set_page_edit_handler() would make more sense to me, as someone who writes models. If I want to change the edit handlers for this model, I'm instinctively expecting to use `model.make_change`