[feature]xiaojing&ruoran&zekai: add viff runner to project
[feature]xiaojing&ruoran&zekai: rename home to jobs(public)
Ruoran: Merge branch 'development' into 21-manually-trigger-run
Ruoran: udpate gitignore to ignore .idea/
[feature]Zhihao&Ruoran: add "build" array to job
Qiu: Merge branch '5-job-list' of github.com:twers/Viff-Service into 52-job-detail-page

Conflicts:
	lib/jobs/routes/jobs.js
	test/lib/jobs/job.js
[feature]Qiu: rename jobs/index.jade to jobs/show.jade
[feature]Qiu: add job detail controller

config the route to match /jobs/:_id to show one specific job
[feature]Qiu: add stub reset in test
Qiu: Merge branch '5-job-list' of github.com:twers/Viff-Service into 52-job-detail-page

Conflicts:
	lib/views/job-nav.jade
[feature]ruoran: modify test config js to phantom
ruoran: ignore selenium jar file

please manually copy it to your root and use the same name for further use
ruoran: Merge branch 'development' into 21-manually-trigger-run

Conflicts:
	.gitignore
	public/scripts/jobs/index.js
[fix]Zhihao&Ruoran: extract build cruder to job cruder.

Because front end want to reuse backend module, could not write cruder
into module directly so fix it now. Will disscuss with Zekai later.
Qiu: Merge branch 'development' of github.com:twers/Viff-Service into 52-job-detail-page

Conflicts:
	lib/jobs/routes/jobs.js
[feature]Qiu: add e2e test for job navigation

click one item on the job list, the detail would be shown on right.
[fix]Zhihao&Ruoran: change implement of Jobs.findBuilds(jobid, data){}

Jobs.findBuilds(jobid, data){} now return data as array which is consist
of Build object.
improve some tests of builds.js.
[feature]Zhihao: do not merge this. feature for triger run.
[feature]Zhihao: trigger run

now the buildRunner.runbuild(jobObj, buildId, callback) will excute
callback after the spawn process is exit. the viff report will be
created at /temp/{job id}/{build id}/
[fix]zekai: fix upload path error - bodyParsor call multipart again