add critical error context (#23)
* dcspark-core add CriticalError for anyhow::Context * cardano-source: mark deserialization error as Critical * add file and line-number information to the error a macro is required to construct it now, since file! and line! are macros, otherwise those would point to the constructor * close the connection if the source is dropped in the middle of a request