Change all tests under integration to use pytest idioms. (rebased onto develop)



This is the same as gh-1559 but rebased onto develop.

----

This PR modifies all OmeroPy integration tests to use pytest idioms such as Python assertions and with for exception handling. Some tests have been fixed along the way and some tidying up has been done. The initial aim of this PR is for the tests to be run as part of a merge build which will help identify differences between local test results and those on hudson.

To test this PR use a running locally built server and from within ```components/tools/OmeroPy/``` use the following to run the entire suite:
```
./setup.py test -s test -m "not long_running"
```
Please do remember to use the ```-m``` flag otherwise the tests may take up to two hours due to two integration test files! You can run any of the three individual targets for convenience as below if necessary:
```
./setup.py test -s test/unit
./setup.py test -s test/gatewaytest
./setup.py test -s test/integration -m "not long_running"
```
The expected result here is that all the tests run and there are no errors. It is acceptable for this PR if there are a few failures and they will be some skips, xfails and possibly xpasses.