Added ability to query slaves for executors.

  - can pull list of executor objects for
    each slave
  - added unit tests for new code.
Added systests for executor feature. Other fixes.

 - fixed missing index in executor.
 - removed unnecessary try/except block in executors
Randomize jenkins http port for systests to avoid collision with default 8080
Adding myself as a contributor
Merge pull request #191 from makewhatis/executor_module

Added ability to query slaves for executors.
Merge pull request #194 from adamreid/master

Randomize jenkins http port for systests #181
Added build.get_revision_branch method (Git only)
Made invocation.get_job_number to poll job
Added delay to let Jenkins to catchup with invocation
Added another delay to let Jenkins catchup
Removed unused import
Merge pull request #202 from lechat/git_branch

Added function to get git branch from build and fixed failing systests
Jobs without the first build can throw error
add unit test for jobs without first build
Changed eval() to ast.literal_eval() for safety
Fix: error message was not giving job name
Merge pull request #206 from linnik/master

Jobs without the first build can throw error
Updated api module

  Added optional username and password to all methods
  Fixed #203
  Fixed #201
Merge pull request #208 from lechat/fix_api

Updated api module
Merge pull request #207 from lechat/json_change

Replaced eval() with safer ast.literal_eval().

Latest version of Jenkins actually suggests using that method.