Bug 1087630 - [Autolander] use integration branch, add tests

This is not perfect and we can make it better, but some feedback would be good if you guys have any. Here is a few things at a high-level of what's done here:

* Taskgraphs - Schedules tasksgraphs if the project contains a taskgraph.json. Will wait until a "finished" state to land. If there is no taskgraph.json, lands when the bug has checkin-needed and a review. 
* Integration Branch - Commits are applied to the integration branch. In the case of a taskgraph failure the integration branch is re-built and commits are re-played on top of it.
* Integration Tests - End-to-end integration tests have been implemented. Each test currently destroys and re-creates a test repo on github. Run tests using ```npm test```.

https://bugzilla.mozilla.org/show_bug.cgi?id=1087630
Is there a reason why we're passing the bug object in here instead of just the bug id?  Noticed other methods in this PR just pass in bug id.