Split DsCore into DsCore and DsCoreImpl