This follows the local convention of using mock even though I'm trying to get
rid of mock. This is because it keeps the test_i2p_provider suite consistent
which means it won't make removing mock from test_i2p_provider later much
harder and lets me avoid doing that work now.
This delegates the construction of the server Endpoint object to the i2p/tor
Provider, which can use the i2p/tor section of the config file to add options
which would be awkward to express as text in an endpoint descriptor string.
refs ticket:2889 (but note this merely makes room for a function to be
written that can process I2CP options, it does not actually handle such
options, so it does not close this ticket yet)