Loosened restrictions on acceptable Job targets, and added functional.partial, which should be preferred to lambda