Improved the handling of trunkPath

- $this->baseUrl is only used if $this->trunkPath === false, otherwise
we will use $this->baseUrl with $this->trunkPath.
- scanning through trunkPath will now look for composer.json file
instead of a path that matches $this->trunkPath, beacuse checking
against the latter failed with deeper trunkPaths
- $this->rootIdentifier is now 'trunk' no matter how deep
$this->trunkPath is (with deeper trunkPaths, the name became something
like "dev-trunk-devel-team-packages-package"
Fixed a coding style issue

Missing a space between if and (
Bail out of the normal 401 handling routine when the origin is GitHub
Test if the 401 was caused by 2FA and ask for OTP if appropriate
Add GitHub OTP to request headers
Trim whitepsace from each argument
Remove GitHub OTP code from RFS class
Add an option which causes reauth attempts to be bypassed
Intercept auth rejections requiring an OTP token
Do not ask for credentials again if OTP token is present
Add OTP token to the request headers
Bypass RFS auth failure handling
Add message when SMS authentication code is required
Change docs to reflect support for GitHub 2FA
Correct capitalisation of OAuth
Correct use of English
Treat HTTP header as case insensitive
Fixed an issue that would lead to scattered autoloading files
Run tests on PHP 5.6 on travis too
Updated the troubleshooting doc with a chapter for the proc_fork errors that happen on a tiny VPS with no swap space. Also added the solution provided in #1849, #1101, #945.