Initial addition

@ewels here it is :+1: 

This is WIP repo, so can be merged without a review (for now) :)
Yeah, it certainly gives more verbose (ugly) error messages. But I think it's probably better to do it like that..

The only reason I say this is that I think I used `sys.exit()` in one of my first PRs here and @guillermo-carrasco or @pekrau told me off and said that it wasn't pythonic :wink: 

Also, if you use `LOG.error` it should end up in @guillermo-carrasco's logging ELK stack tracking system thingamy (I think?). `sys.exit` will just die, which is more of a problem if we run this in an automated pipeline later on..