add invitation service and tests