Add job_script module from LWR including GALAXY_SLOTS logic.

Use new job_script module in the DRMAA runner. This implements the long discussed GALAXY_SLOTS logic for PBS/TORQUE, SLURM, and grid engine when coming through the DRMAA runner.
Condor job runner enhancements.

Implement exit code handling and submission script parameters (job destination parameter <param id="submit_xxxx">yyyy</param> will be passed through as xxxx = yyyy.

Bring in LWR helper scripts to implement most of these and clean up things. Bring in LWR external.py for parsing ID's comding from resource managers, seems like overkill for now in Galaxy because just used in condor, but in LWR also used for its version of the CLI runners (will merge those changes in down the road). Utilize job_scripts module for building script (this is what fixes exit code handling).

TODO: GALAXY_SLOTS logic still not implemented, but should be easier now.
Implement GALAXY_SLOTS logic for condor runner.

Just pass through submit_request_cpus as GALAXY_SLOTS if set in job_conf.xml.
PBS job runner improvements (including GALAXY_SLOTS).

Rework to use get_job_file, this will enable GALAXY_SLOTS logic for the PBS runner. Bring in staging fixes found in pull request #194 from CSIRO (stephen_mcmahon_). Small PEP-8 tweaks.
Add GALAXY_SLOTS logic to local runner.
Improved fix for tools producing command lines with trailing semi-colons.