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
The `fallback_id` repo is special in the sense that it should be required for repos that do not contain the framework, but that should hold for most other `dependency_ids`. It's just a dependency after all. It also does not seem more or less error-prone than the current situation, as it is certainly possible to screw up the fallback_id or the list of dependencies and get junk results due to missing/duplicate ones.  
Why do you feel it would require a larger diff? You already have that manymany and the corresponding handling code, don't you?