Fixing rubocop issues
Internal refactoring of Receiver

- Custom exceptions for invalid workitem/job
- Smaller and more focused methods