Detach broken sessions before closing

Since we may be in the process of re-joining a session
as opposed to creating one, detach before calling
router.destroySession to be safe. This is in response
to odd logouts in web.
Revert workaround (See #8266)

Though all tests passed, the workaround here broken
OMERO.web's multi-threaded usage.
Modify the isAccept method to not use a string (Fix #8266)

On the stable 5.0 branch, we used a workaround to detect
Glacier2 client categories which would fail due to a bug
in the identityToString Ice methods. Rather than carry
along that workaround when ZeroC will fix the issue, we
make a breaking change here which accepts a Processor*
rather than a stringified version of the proxy.
Maintain backwards compatibility (See #8266)

By using a new method for the improved (i.e. non-breaking)
invocation, older processors can still talk to newer servers.
If a newer processor is deployed against an older server, than
a NoSuchMethodError will be thrown.

Conflicts:
	components/tools/OmeroPy/test/integration/scriptstest/test_inputs.py
Add '--repeat' argument to py.test

Any invocation of py.test can now take a `--repeat=10`
argument which is as if `@pytest.mark.parametrize("x", range(10))`
were added manually.

See:
http://stackoverflow.com/questions/21764473/how-can-i-repeat-each-test-multiple-times-in-a-py-test-run