Merge changes from 'myrridin' fork into master

This change contains the fix for PrintJob, making it a standard class and reducing CPU utilization.