Shared rendering settings (rebased onto develop)


This is the same as gh-2365 but rebased onto develop.
Cherry-picked the commits from gh-2522

----

See: http://trac.openmicroscopy.org.uk/ome/ticket/12145

This modifies the rendering and thumbnail services to **not** generate new rendering defs for users viewing someone else's data until a change is requested. This would mean, for example, that for the scenario:
 * user A imports an image (views it, etc)
 * user B views the image, and sees A's settings.
 * user A then modifies the settings
 * user B should still see the same setting.

Only when user B modifies the settings in the viewer should a new rendering settings and thumbnail be generated. And in *no* case should the regeneration do the long re-calculation of min/max, but those should be copied from user A as well.

/cc @jburel @will-moore @chris-allan @pwalczysko @gusferguson @jrswedlow