Added a sample service, changed based service from astract to an interface