Changed constructors from private to protected so ServiceAPI can get to them