Community addons

Some changes to runbot in order to better test with community addons

When testing a repo which does not contain odoo, but addons from OCA:
* Only test modules from the repo, don't test all of odoo's addons
** opener-hr will only test hr-related addons
* Test Community addons in openerp/addons-to-test instead of openerp/addons to better separate them from official addons
* Add dependency repos field to specify additional addons to fetch
** Some OCA repos depend on modules found in other OCA repos
** These are installed in openerp/openerp/addons-extra-dependencies to better separate them and to avoid testing them which could result in an un-ending chain of repo dependency
* Add function which will find the most likely main branch a PR comes from
** using the git merge-base and git log commands
Sure, that would solve the problem of determining which addons specifically to test.

A foreseeable problem would be trying to calculate mods after `checkout` has been run, such as in a `job_25_pep8` (I would prefer a `job_05_pep8`, but that would require checkout to be moved to its own job `job_00_checkout`) which would need that list in order to not complain about other repos.

Moving files around the system in a test suite seems a little odd to me. Merging them, even odder.