BibField: clean up of atlantis.cfg demo file

* Fixes field names and legacy rules to match demo site tag setup.
 (closes #1557)

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: new producer section added to config

* New `producer` section inside the configuration file that allows
  to produce different low level outputs for a given field.

* First release of two producers, one for marc and one for dublin
  core.

* New functions `guess_legacy_field_names` that, using the legacy
  rules from the configuration files try to find which is the field
  name for a given tag from a given master format.

* Better legacy export as marc that uses the new producer capability.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Co-authored-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: fix for misbehavior when parsing rules

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Co-authored-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: better handling of calculated fields

* Adds new internal key `__calculated_functions` to store how to
  update the cached value of the field.

* All the fields marked with `@do_not_cache` are not longer stored
  stored inside rec_json, only the key is reserved.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@gmail.com>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: new decorator @only_if_master_format

* New decorator @only_if_master_value, similar to @only_if but in
  this case we can create a boolean expression based on `value`,
  which is coming from the master format before evaluation.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: bibdoc integration

* Adds two new calculated fields to interact with files from
  BibDocFile, one `files` which provides a dict containing some
  useful information about the files and `bibdocs` which contains
  the BibDoc object itself.

Signed-off-by: Esteban J. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: continuable vs fatal errors

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: fix for `is_type_isbn`

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: fix for '__eq__' to better compare recs

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: `is_empty` update

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: `schema` in `split_blob`

* When splitting the blob it might be the case that the schema is
  needed, moreover if the reader accepts several schemas for the
  same input format.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: elimination of None values in recjson

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: new field filtering for `get_record`

* Modified `__repr__` to only display relevant keys and hide keys
  of the form `__key`.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibField: new upgrade recipe to remove json cache

Co-authored-by: Tibor Simko <tibor.simko@cern.ch>
Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@cern.ch>
Signed-off-by: Tibor Simko <tibor.simko@cern.ch>