Add schema preprocessing to completeness metric

In order to count the number of maximum fields beforehand I changed the
completeness metric constructor to process the JSON schema. I have added
a method which counts the field based on the type object, array or else.
If a field type is an object or array then this field will not be
counted, but the subfields.

Signed-off-by: Konrad Reiche <konrad.reiche@gmail.com>