feat(logging) - Errors and Logging (WIP)

- [x] [SD-1297] Re-factoring the API (HTTP) Errors: 
- [x] [SD-1274] Backend: Create a list of errors (with error codes) to be raised in ingest
- [x] [SD-1275] Backend: Create log messages to changes to channel configurations (Mayur has a change for this and I added more logging for errors)
As far as I know all the errors except Ingest errors are converted to HTTP errors. I agree with you the current hierarchy can stay like this for the time being until if we see an issue or a better way. Thanks Adrian.