added a service provider; fixed some namespace issues