Added new contract for Ingest callbacks.  Separated original contract into own assembly, which can be shared.