Delegating quasi-core parts of the platform to 3rd party libraries is quite common. For example, the preferred routing package for Angular, ui-router (https://github.com/angular-ui/ui-router) was born four years after the release of Angular, and for DOM state preservation, the ui-router-extras (https://github.com/christopherthielen/ui-router-extras) addon is required.
Delegating quasi-core parts of the platform to 3rd party libraries is quite common. For example, the preferred routing package for Angular, ui-router (https://github.com/angular-ui/ui-router) was born four years after the release of Angular, and for DOM state preservation, the ui-router-extras (https://github.com/christopherthielen/ui-router-extras) addon is required.