Extract core extensions to a separated file.

This way we can share them with other providers.

/cc @github/enterprise-ops