split core (api) into separate rpm; make others depend on this