The gaLayers service provides an abstraction for the BOD layers config. So I don't think it should provide a getKMLLayer. The only place where we need to create KML layers is in the ga-import-kml directive, so I would just leave the "KML layer creation" code there.