Added PatternCoordinator class which returns a set of coordinated pattern generators

A PatternCoordinator is a set of coordinated pattern generators.
The pattern generators are named according to the labels parameter.
The dimensions to be returned are specified with the dims parameter.
PatternGenerators are first instantiated with the parameters specified in input_parameters, and then subclasses of ValueCoordinator are applied to modify the properties of these generators.
I haven't tried it with a json object, but if it supports normal dictionary access methods, then it might be clearer to do something like self.description = dataset.get('description','')