Changed to more canonical Service as trait pattern