Fixes extension list / enable /disable not working when extension source not in root directory.

Signed-off-by: Rack Lin <racklin@gmail.com>
rewrite configM4Exists and lookupDirectories at caller side.

Signed-off-by: Rack Lin <racklin@gmail.com>
Merge pull request #408 from racklin/bugfix/ext_manage

Fixes extension list / enable /disable issues.
ignore ctags file generated by tests
use ob_get_clean() instead of ob_end_clean()
add a centralized RepositoryDslParser + tests #408 #409
use RepositoryDslParser on (BitbucketProvider|GithubProvider):exixts()
we still have a lot of duplicated code on BitbucketProvider, GithubProvider and PeclProvider
relates to #408 #409
newline at EOF all the things at PhpBrew\Extension\Provider
[skip ci]
Supports both of GNU and BSD version `stat` . fixed #399

Signed-off-by: Rack Lin <racklin@gmail.com>
Merge pull request #412 from racklin/bugfix/bsd_stat

Supports both of GNU and BSD version `stat`