use warnings.warn() instead of raise for DeprecationWarning

`raise DeprecationWarning` syntax treats the warning as an error and causes a crash instead of a warning on legacy code.  This change converts the `raise DeprecationWarning` occurrences into `warnings.warn()`.  It includes regression tests for the change to the Job objects, though I wasn't familiar enough with manipulating Worker objects manually to provide a regression test for the that class.