added service core classes and tests