refs https://github.com/TryGhost/Toolbox/issues/363 - this API framework is standalone and should be pulled out into a separate package so we can define its boundaries more clearly, and promote better testing of smaller parts