I think it is more consistent with our other classes to make an IHubCallerContext interface instead of making everything virtual.