XD-788A Job Command Integration Tests

* Extracted job methods from AbstractIntegrationTest and moved them to AbstractJobTest subclass
* Jobs Inherit from AbstractJobTest
* Moved methods from JobUtil to AbstractJobTest
* Removed JobUtil
* Using waitForTablePopulation instead of waitForXD in JDBC Source/Job/JobCommand tests.
* Removed un-necessary waitForXD's
* Implemented the following JobCommandTests
** testJobLifeCycle
** testJobCreateDuplicate
** testStreamDestroyMissing
** testJobCreateDuplicateWithDeployFalse
** testJobDeployUndeployFlow
** testInvalidJobDescriptor
** testMissingJobDescriptor
** testListStepExecutions
** testListJobExecutions

Can't write tests for StopJobExecution until XD-2051  is complete.
In setup there is a call to super.setup(), which in addition to calling initializer(), calls destroyAllStreams and waitForXD.  The tearDown method in AbstractJobList doesn't call super.tearDown (which also calls destoryAllStreams and waitForXD).  They should be consistent in use of the base class, it looks like one can avoid the call to super.setup() and just call initializer() in AbstractJobTests.setup