Support additional interfaces when mock

Hi @remogloor , This PR is to implement additional interfaces when mock. The use case is as below. Can you please help have a review?
```C#
[Fact]
public void ToMockCanBeUsedToAddAdditionalInterfaces()
{
    using (var kernel = this.CreateKernel())
    {
        kernel.Bind<IDummyService>().ToMock(typeof(IDummyService2));

        var mock = kernel.Get<IDummyService>();

        mock.Should().BeAssignableTo<IDummyService2>();
    }
}
```