Message implementations used throughout the server for internal communication. Messages subclass {@link ome.util.messages.InternalMessage} and provide special exception handling via {@link ome.system.OmeroContext#publishMessage(ome.util.messages.InternalMessage)} As far as possible, messages should be considered primitives and have no dependencies on other types in the server.